java中的进制
public class Ex_jinzhi {
public static void main(String[] args) {
//进制 二进制 0b 十进制 八进制0 十六进制0x
int i = 0b10;
int i1 = 10;
int i2 = 010;
int i3 = 0x10;
System.out.println(i);
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
}
}
为什么float不常用
public class Ex_jinzhi {
public static void main(String[] args) {
//float 是有限的,离散的,具有舍入误差,接近但不等于
// 最好完全避免用浮点数进行比较
float f = 0.1f; //0.1
double d = 1/10; //0.1
System.out.println(f==d);
float d1 = 2323232323231f;
float d2 = d1 + 1;
System.out.println(d1==d2);
}
}
判断equal 与==区别
public class test1 {
public static void main(String[] args) {
String a = new String("ab"); // a 为一个引用
String b = new String("ab"); // b为另一个引用,对象的内容一样
String aa = "ab"; // 放在常量池中
String bb = "ab"; // 从常量池中查找
if (aa == bb) // true
System.out.println("aa==bb");
if (a == b) // false,非同一对象
System.out.println("a==b");
if (a.equals(b)) // true
System.out.println("aEQb");
if (42 == 42.0) { // true
System.out.println("true");
}
}
}
类型转换
public class Demo {
public static void main(String[] args) {
int i =128;
byte b=(byte)i;
double c=i;
System.out.println(i);
System.out.println(b);
System.out.println(c);
System.out.println("=====================");
System.out.println((int)23.7);
System.out.println((int)-45.89f);//精度丢了
System.out.println("=====================");
char m = 'a';
int n = m+1; //unicode
System.out.println(n);
System.out.println((char)n);
}
}
字符整除的时候注意其范围与类型
public class Demo {
public static void main(String[] args) {
int a=10;
int b=20;
System.out.println(a/b);//0
System.out.println(a/(double) b);//0.5
}
}
String +号易错点
public class Demo {
public static void main(String[] args) {
int a=10;
int b=50;
//字符串连接符
System.out.println(""+a+b);
System.out.println(a+b+"");
}
}
Scanner 接收String 类型
import java.util.Scanner;
public class Demo2_Scanner {
public static void main(String[] args) {
//创建一个扫描对象,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收: ");
//判断用户有没有输入字符串
if (scanner.hasNext()){
//使用next方式接收
String str = scanner.next();
System.out.println("输出内容为: "+str);
}
//凡是属于IO流用完要关闭
scanner.close();
}
}
Scanner 接收int 类型
import java.util.Scanner;
public class Demo2_Scanner {
public static void main(String[] args) {
//创建一个扫描对象,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
//从键盘接收数据
int i=0;
float f = 0.0f;
System.out.println("请输入整数");
//判断用户有没有输入字符串
if (scanner.hasNextInt()){
//使用next方式接收
i = scanner.nextInt();
System.out.println("整数数据 "+i);
}else{
System.out.println("输入的不是整数数据");
}
System.out.println("请输入小数");
//判断用户有没有输入字符串
if (scanner.hasNextFloat()){
//使用next方式接收
f = scanner.nextFloat();
System.out.println("小数数据 "+f);
}else{
System.out.println("输入的不是整数数据");
}
//凡是属于IO流用完要关闭
scanner.close();
}
}