1.变量使用注意事项
1.变量表示内存中的一个存储区域[不同的变量,类型不同,占用的空间大小不同,比如:int 4 个字节,double 就是 8个字节]
2.该区域有自己的名称[变量名]和类型[数据类型]
3.变量必须先声明,后使用,即有顺序
4.该区域的数据/值可以在同一类型范围内不断变化
5.变量在同一个作用域内不能重名
6.变量=变量名+值+数据类型,变量三要素
2.程序中 + 号的使用
1.当左右两侧都是数值型时,做加法运算
2.当左右两侧有一方为字符串,则做拼接运算
3.运算顺序,是从左到右
3.Java数据类型

3.1整型的类型

注:声明long型常量须后加'l'或'L'
3.2浮点型的分类

浮点数=符号位+指数位+尾数位
注:声明float型常量,须加'f'或'F'
3.3字符类型使用细节
1.字符常量是用单引号('')括起来的单个字符。例如:char c1 = 'a';char c2 = '中';char c3 = '9';
2.Java中还允许使用转义字符'\\'来将其后的字符转变为特殊字符型常量。例如:char c3='n'; // '\\n'表示换行符
3.在java中,char的本质是一个整数,在输出时,是unicode码对应的字符。http://tool.chinaz.com/Tools/Unicode.aspx
4.可以直接给char赋一个整数,然后输出时,会按照对应的unicode字符输出[97->>a]
5.char类型是可以进行运算的,相当于一个整数,因为它都对应有Unicode码.
3.4布尔类型:boolean
1.布尔类型也叫boolean类型,booolean类型数据只允许取值true和false,无null
2.boolean类型占1个字节。
3.boolean 类型适于逻辑运算,一般用于程序流程控制。
3.5基本数据类型转换
3.5.1自动类型转换
当Java程序在进行赋值或者运算时,精度小的类型自动转换成精度大的数据类型,这个就是自动类型转换。

3.5.2自动类型转换注意和细节
1.有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
2.当我们把精度(容量)大 的数据类型赋值给精度(容量)小的数据类型时,就会报错,反之就会进行自动类型转换。
3.(byte,short)和 char之间不会相互自动转换。
4.byte,short,char 他们三者可以计算,在计算时首先转换为int类型。
5.boolean 不参与转换
6.自动提升原则:表达式结果的类型自动提升为操作数中最大的类型
3.5.3强制类型转换
自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型。使用时要加上强制转换符 (),但可能造成 精度降低或溢出,格外要注意。
3.5.4强制类型转换细节说明
1.当进行数据的大小从 大>小,就需要使用到强制转换
2.强转符号只针对于最近的操作数有效,往往会使用小括号提升优先级
public class Homework02{
public static void main(String[] args){
int y = (int)(10*3.5+6*1.5);
System.out.println(y);
}
}

3.char类型可以保存 int的常量值,但不能保存int的变量值,需要强转
public class Homework02{
public static void main(String[] args){
char c1 = 100;//ok
int m= 100;//ok
char c2=m;//错误
char c3 = (char)m; //ok
System.out.println(c3);//100对应的字符
}
}
4.byte和short,char 类型在进行运算时,当做int类型处理。
3.5.5基本数据类型和String类型的转换
基本数据类型转String类型语法:将基本数据类型的值+""即可
String类型转基本数据类型语法:通过基本数据类型包装类调用parseXX方法即可
public class StringToBasic{
public static void main(String[] args) {
//基本数据类型->String
int n1 = 100;
float f1 = 1.1F;
double d1 = 4.5;
boolean b1 = true;
String s1 = n1 + "";
String s2 = f1 + "";
String s3 = d1 + "";
String s4 = b1 + "";
System.out.println(s1 + " " + s2 + " " + s3 + " " + s4);
//String->对应的基本数据类型
String s5 = "123";
//会在OOP 讲对象和方法的时候回详细
//解读 使用 基本数据类型对应的包装类,的相应方法,得到基本数据类型
int num1 = Integer.parseInt(s5);
double num2 = Double.parseDouble(s5);
float num3 = Float.parseFloat(s5);
long num4 = Long.parseLong(s5);
byte num5 = Byte.parseByte(s5);
boolean b = Boolean.parseBoolean("true");
short num6 = Short.parseShort(s5);
System.out.println("===================");
System.out.println(num1);//123
System.out.println(num2);//123.0
System.out.println(num3);//123.0
System.out.println(num4);//123
System.out.println(num5);//123
System.out.println(num6);//123
System.out.println(b);//true
//怎么把字符串转成字符char->含义是指把字符串的第一个字符得到
//解读s5.charAt(0)得到s5字符串的第一个字符'1'
System.out.println(s5.charAt(0));
}
}

4.作业

public class Homework02{
public static void main(String[] args){
char n1 = '\\n';
char n2 = '\\t';
char n3 = '\\r';
char n4 = '\\\\';
char n5 = '1';
char n6 = '2';
char n7 = '3';
System.out.println(n1);
System.out.println(n2);
System.out.println(n3);
System.out.println(n4);
System.out.println(n5);
System.out.println(n6);
System.out.println(n7);
}
}

public class Homework03{
public static void main(String[] args) {
String book1 = "哈利波特";
String book2 = "盗墓笔记";
System.out.println(book1 + book2);
char gender1 = '女';
char gender2 = '男';
System.out.println(gender1 + gender2);
double price1 = 10.1;
double price2 = 20.2;
System.out.println(price1 + price2);
}
}

public class Homework04{
public static void main(String[] args) {
String name = "张三";
int age = 20;
double score = 98.2;
char gender = '男';
String hobby = "跑步";
System.out.println("姓名\\t" + "年龄\\t" + "成绩\\t" + "性别\\t" + "爱好\\n"
+ name + "\\t" + age + "\\t" + score + "\\t" + gender + "\\t" + hobby);
}
}



