Java学习 变量、基本数据类型


1.什么是变量?

答:内存单元名字,通过名字确定找到相应的值


2.基本数据类型,String 不是基本数据类型

byte < short < char < int < long <  float < double

高精度不可直接赋值给低精度,需要强制转换

如:

double d = 123;

long l = (long) d;


3.基本数据类型与字符串之间的转换

1)基本->字符串

String.valueOf(各种基本类型)


2)字符串->基本

Integer.parseInt

Float.parseFloat

Double.parseDouble

问题:以String转换成int为例数据类型转换parse与valueOf区别?

答:static int parseInt(String s) 将字符串作为有符号的十进制整数(int)进行分析;static Integer valueOf(String s) ,返回保持指定的String的值得Integer对象

问题:Integer与Integer比较,Integer与int比较是否相同?

Integer与Integer不能使用==比较是否相同,使用compareTo方法,但是int与Integer可以使用==比较,JRE会自动把Integer转成int 型然后比较,


4.java中的equals(), == , compareTo(), compare()

参考自:http://blog.csdn.net/emmagood/article/details/7904571

比较方法:变量使用==比较,比较的是变量的值;对象使用==比较,比较的是地址;地址比较(.equals());asc码比较(.compareTo())

比较内容:数值或地址(引用),地址(引用),位 

1)== ,可作各个基本类型数据之间的比较,即数值比较

2)比较两个对象,比较的是引用(地址比较),不是数值比较,因此不能用==,比较对象方法

a)Object的booleanequals(Object obj),重写该方法

       b)Compare接口的compareTo()方法,返回int数值 , 若<0表示小于, 若0表示==, 若>0表示大于; String,Integer,Float,Date,Time等都实现了Compare接口,因此能直接调用compareTo()方法。compareto方法,返回参与比较的前后两个字符串的asc码的差值。会对每一位依次进行比较

是否相同

package com.danny.test;

public class EqualTest {
	public static void main(String[] args){
		String a = "abcde";
		String b = "e";
		System.out.println(a.compareTo(b));
	}
}
打印结果为:-4

为String a,b的首字符的asc码的差值 = 97-101 = 4

注: Integer.valueOf(a) 为97; Integer.valueOf(e)为101

3)最后compare()是Comparator接口的一个方法。最为常见的用法是自定义一个类实现Comparator接口,然后在调用Collection.sort()时作为参数传递。这样可以在compare()方法的实现中指定集合元素的排序规则。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值