码迷,mamicode.com
首页 > 编程语言 > 详细

Java数据类型

时间:2020-07-26 00:05:15      阅读:66      评论:0      收藏:0      [点我收藏+]

标签:char   存放位置   基本数据   bool   com   地址   引用类型   getname   code   

Java数据类型

 

Java中的数据类型分为两大类,基本数据类型和引用数据类型。

 

1 基本数据类型

基本数据类型只有八种,可按照如下分类

  • 整数类型 :long int short byte
  • 浮点类型:float double
  • 字符类型:char
  • 布尔类型:boolean
 数据类型大小/位可表示数据范围默认值封装器类
1 byte 8 -128~127 0 Byte
2 short 16 -32768~32767 0 Short
3 int 32 -2147483648~2147483647 0 Integer
4 long 64 -9223372036854775808~9223372036854775807 0 Long
5 float 32 -3.4E38~3.4E38 0.0 Float
6 double( 64 -1.7E308~1.7E308 0.0 Double
7 char 16 0~255 ‘\u0000‘ Character
8 boolean 1 true或false flase Boolean

 

2.引用数据类型

Java有 5 种引用类型(对象类型):类 接口 数组 枚举 注解

例如,String类型就是引用类型。

简单来说,所有的非基本数据类型都是引用数据类型。

 

基本数据类型和引用数据类型的区别

存放位置

基本数据类型

在方法定义的非全局基本数据类型变量的具体内容是存储在栈中

引用数据数据类型

只要是引用数据类型变量,其具体内容都是放在堆中,而中存放的是其具体内容所在内存的地址

 public class Main{
     public static void main(String[] args){
         //基本数据类型
         int i=5;
         char=i;
         
         //引用数据类型
         String str="Hello";
     }
 }

  

技术图片

 

传递方式

基本变量类型

在方法中定义的非全局基本数据类型变量,调用方法时作为参数是按数值传递

ps:值传递等于复制一份自己给方法,本身的值不会被改变

 public class Main{
     public static void main(String[] args) {
         int a=100;
         System.out.println("调用方法前a的值"+a);
         fun(a);
         System.out.println("调用方法后a的值"+a);
     }
 ?
     private static void fun(int temp) {
         temp=0;
     }
 }

  技术图片

引用变量类型

引用数据类型变量,调用方法时作为参数是按引用传递

ps:引用传递等于将自己传递过去了 ,本身的值是会被改变的

 public class Main {
     public static void main(String[] args) {
 ?
         Book book=new Book();
         System.out.println("调用方法前的"+book);
         set(book);
         System.out.println("调用方法后的"+book);
 ?
 ?
 set
     }
 ?
     private static void set(Book set) {
         set.setBookNum(1314);
         set.setName("《YOU》");
     }
 ?
 }
 ?
 ?
 ?
 class Book{
     private String name;
     private int bookNum;
 ?
     public Book(String name, int bookNum) {
         this.name = name;
         this.bookNum = bookNum;
     }
 ?
     public Book() {
     }
 ?
     public String getName() {
         return name;
     }
 ?
     public void setName(String name) {
         this.name = name;
     }
 ?
     public int getBookNum() {
         return bookNum;
     }
 ?
     public void setBookNum(int bookNum) {
         this.bookNum = bookNum;
     }
 ?
     @Override
     public String toString() {
         return  " 书名:‘" + name + ‘\‘‘ +
                 ", 书号:" + bookNum ;
     }
 }

  技术图片

 

Java数据类型

标签:char   存放位置   基本数据   bool   com   地址   引用类型   getname   code   

原文地址:https://www.cnblogs.com/LinpStar/p/13376097.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!