案例一
/*编程实现变量的输入输出*/
//导入java目录中util目录的Scanner类
import java.util.Scanner;
public class VarIOTest {public static void main (String args [] ) {// 1.声明两个变量用于记录姓名和年龄信息(局部变量需要默认值)//Sting name;//int age;// 2.提示用户从键盘输入姓名和年龄信息并放入到变量中 (变量随时使用随时声明)System.out.println("请输入你的姓名和年龄信息:");// 创建一个扫描器来扫描键盘输入的内容 System.in 代表键盘输入Scanner sc = new Scanner(System.in);// 通过扫描器读取一个字符串数据放入变量name中String name = sc.next();// 通过扫描器读取一个整数数据放入变量age中int age = sc.nextInt();// 3.打印变量数值 (尽可能减少重复的代码)System.out.println("name = " + name);System.out.println("age = " + age);System.out.println("name = " + name + ",age = " + age);}
}
案例二
/*编程实现变量的声明和使用*/
public class VarTest {public static void main (String args []) {// 1.声明一个变量并初始化 数据类型 变量名 = 初始值;int age = 18;// 2.打印变量的数值 + 字符串连接符(用于将两边的内容的拼接,结果还是字符串)System.out.println("age = " + age);System.out.println("-------------------------------------");// 3.使用变量的注意事项// 3.1使用变量之前需要声明//System.out.println("name = " + name); // 错误: 找不到符号// 3.2 使用变量之前需要初始化//String name; // 错误: 可能尚未初始化变量name//System.out.println("name = " + name);String name = "裴家奇";System.out.println("name = " + name);// 3.3 变量不能重复声明int age = 18; // 已在方法 main(String[])中定义了变量 age}
}
案例三
/*提示用户输入正整数秒数,拆分秒数后输出x小时x分x秒如:输入7199 , 输出1小时59分59秒*/
import java.util.Scanner;
public class Test {public static void main (String [] args ) {System.out.println("请输入一个正整数秒数:");Scanner sc = new Scanner(System.in);int num = sc.nextInt();// 2.将正整数的秒数拆分为时分秒后并使用变量记录// 3666秒 => 1小时1分钟6秒钟// 3666 / 3600 = 1 小时 3666 % 3600 = 66 / 60 = 1 分钟 3666 % 60 = 6 秒钟 int hour = num / 3600; // 拆分小时数int min = num % 3600 / 60; // 拆分分钟数int sec = num % 60; // 拆分秒数// 3.打印最终的拆分结果System.out.println(num + "秒转换为" + hour + "小时" + min + "分钟" + sec + "秒钟");}
}
案例四
/* 编程实现布尔类型的使用*/
public class BooleanTest {public static void main (String args []) {//1.声明一个boolean类型的变量并初始化boolean b1 = true;//2.打印变量的数值System.out.println("b1 = " + b1);// b1 = trueSystem.out.println("-----------------------------------");//3.修改变量b1的数值 = 是赋值运算符,用于将等号右边的数据赋值给左边的变量,覆盖掉原来的变量b1 = false;System.out.println("b1 = " + b1);// b1 = falseSystem.out.println("-----------------------------------");b1 = 1; // 错误: 不兼容的类型: int无法转换为booleanSystem.out.println("b1 = " + b1);// b1 = }
}
案例五
/*编程实现字符类型的使用*/
public class CharTest {public static void main(String args []) {// 1.声明一个char类型的变量并初始化char c1 = 'a';// 2.打印变量的数值System.out.println("c1 = " + c1); // c1 = a 打印c1是一个字符类型System.out.println("对应的编号是:" + (int)c1);// 对应的编号是:97System.out.println("-------------------------------------------------");// 3.声明一个char类型的变量并初始化char c2 = 98;System.out.println("c2 = " + c2); // c2 = b 打印c2是一个字符类型System.out.println("-------------------------------------------------");// 3.使用unicode字符集来表示一下我的名字 裴家奇 对应的编号是: \u88f4 \u5bb6 \u5947char c3 = '\u88f4';char c4 = '\u5bb6';char c5 = '\u5947';System.out.println("最终的结果是:" + c3 + c4 + c5);System.out.println("-------------------------------------------------");// 4.特殊字符的使用 反斜杠具有转义功能System.out.println("我想过过\"过过过过的生活");System.out.println("我想过过\'过过过过的生活");System.out.println("我想过过\\过过过过的生活");System.out.println("我想过过\n过过过过的生活");System.out.println("我想过过\t过过过过的生活");}
}
案例六
public class DataByteTest01{public static void main(String args []){//char数据类型,2个字节byteschar a = 'a';a='国';System.out.println("输出的内容是"+a);char c1='n';System.out.println(c1);char c2='\n';//换行符System.out.println("这是一个什么符号"+c2);char c3='t';char c4='\t';//制表符System.out.print(c3);System.out.println(c4+"这是一个什么符号");char c5 = '\\';//普通的反斜杠System.out.println(c5);}}
案例七
public class DataByteTest02{public static void main(String args []){int q=10;int w=010;int l=0x10;System.out.println(q);System.out.println(w);System.out.println(l);double dd =10/3;long g = 10;int h =(int)(g/3);System.out.println(dd);System.out.println(h);}
}
案例八
/*编程实现浮点类型使用*/
public class DoubleTest {public static void main(String args []) {// 1.声明一个float类型的变量并初始化//float f1 = 3.145926; // 错误: 不兼容的类型: 从double转换到float可能会有损失。小数数据叫做直接量,默认为double类型float f1 = 3.1415926F;// 2.打印变量的数值System.out.println("f1 = " + f1); // f1 = 3.1415925 一般是7位有效数字System.out.println("---------------------------------------------------");// 3.声明一个double类型的变量并初始化double d1 = 3.1415926;System.out.println("d1 = " + d1); // d1 = 3.1415926 一般是15位有效数字System.out.println("---------------------------------------------------");// 4.笔试考点System.out.println(0.1+0.2); // 0.30000000000000004 运算时可能会出现误差,若希望实现精度运算则借助java.math.BigDecimal类型}
}
案例九
/*编程实现整数类型使用*/
public class IntTest {public static void main (String args []) {// 1.声明一个byte类型的变量并初始化byte b1 = 25; // 数据值在-128-127范围内,为了方便允许int类型自动转换byte//byte b2 = 250; // 错误: 不兼容的类型: 从int转换到byte可能会有损失。250这样直接写出的整数型数据叫做直接量/常量/字面值 默认为int类型// 2.打印变量的数值System.out.println("b1 = " + b1);System.out.println("----------------------------------------------");// 3.声明一个short类型变量并初始化short s1 = 250;//short s2 = 250250;// 错误: 不兼容的类型: 从int转换到short可能会有损失System.out.println("s1 = " + s1);System.out.println("----------------------------------------------");// 4.声明一个int类型变量并初始化int i1 = 250250;//int i2 = 2502505006; // 错误: 过大的整数: 2502505006System.out.println("i1 = " + i1);System.out.println("----------------------------------------------");// 5.声明一个long类型的变量并初始化,若描述比long类型还大的数据则使用java.math.BigInteger类型long g1 = 2502505006L;System.out.println("g1 = " + g1);System.out.println("----------------------------------------------");// 6.请问下面的代码是否有错误?如有请指出并说明原因int i3 = 25;byte b3 = i3; // 错误: 不兼容的类型: 从int转换到byte可能会有损失。不知道i3的具体字面值,i3是一个int类型的变量System.out.println("b3 = " + b3);}
}
案例十
/*编程实现基本数据类型之间的实现*/
public class TransFormTest {public static void main(String args []) {//1.声明两个变量并初始化byte b1 = 10;short s1 = 20;//2.打印变量数值System.out.println("b1 = " + b1);// b1 = 10System.out.println("s1 = " + s1);// s1 = 20System.out.println("-------------------------------------");//3.实现自动类型转换的使用s1=b1;// 表示将变量b1的数值赋值给变量s1.并覆盖掉变量s1中的数值,相当于从byte类型转换到short类型,小到大,自动转换System.out.println("b1 = " + b1);// b1 = 10System.out.println("s1 = " + s1);// s1 = 10System.out.println("-------------------------------------");//4.实现强制类型转换的使用//表示将变量s1的数值赋值给变量b1,并覆盖掉变量b1中的数值,相当于从short类型转换到byte类型,大到小,强制类型转换//b1 = s1;// 错误: 不兼容的类型: 从short转换到byte可能会有损失 (强制转换为byte,byte只有1个字节,8个比特位)s1 = 128;//故意加改行代码,128在short的整数范围内,占位2个字节,16个比特位,0000 0000 1000 0000 => 1000 0000 => (1以为是符号位代表负数) => 0111 1111 => 1000 1000 => 128 => -128b1 = (byte)s1;System.out.println("b1 = " + b1);// b1 = -128System.out.println("s1 = " + s1);// s1 = 128}
}