第一个java文件
复制代码
public class one { //每一个文件必须要有一个公共类 这个类名必须和你的文件名一致
public static void main(String [] args) // java入口
{
System.out.println("Hello world");
}
}
复制代码
java的注释:
单行注释:// 注释内容
多行注释:/注释内容/
一、元素(变量)的命名
java中元素(类名、变量名、方法名、接口名、包名)统称为标识符
定义规则:
复制代码
由数字、字母、下划线$组成
数字不可以开头
不可以使用关键字保留字但能包含关键字保留字
java元素中严格规定大小写,长度无限制
标识符不能包含空格
复制代码
不能使用关键字但是可以包含的意思是 你的命名中有一大堆但是可以含有这个关键字 要是只有单独的一个关键字是不行的
eg:
复制代码
class one{ // 必须要和你的文件名一致
public static void main(String [] args){
}
}
class static{ // 错误不可以使用关键字
}
class static_1{ // 可以使用 因为只是单纯的包含关键字
}
复制代码
java变量:
java的变量和以前所接触的变量不同需要携带变量的类型
变量必须要先声明之后再去使用
复制代码
1、数据类型 变量名 = 变量值; //分号是必须添加的
eg: int age = 30;
2、
也可以分开定义:
数据类型 变量
变量名 = 变量值
eg:
int age ;
age = 30;
复制代码
eg:
复制代码
class one{ // 必须要和你的文件名一致
public static void main(String [] args){
int age = 30; //变量的定义
System.out.println(age); // 变量的使用
int number; // 变量的生明
number = 300; // 变量的赋值
System.out.println(number);
}
}
复制代码
java的数据类型
复制代码
存储大小 例值 注释
byte 1byte 3 字节
int 4bytes 3 整数
short 2bytes 3 短整数
long 8bytes 3 长整数
float 4bytes 1.2 单精度浮点数
double 8bytes 1.2 双精度浮点数
char 2bytes ‘a’ 字符
boolean 1bit true 布尔值
复制代码
基本数据类型:
整型: byte\short\int\long
浮点型:float\double
字符型: char
布尔型: boolean
在java中整型常量默认为int 浮点常量默认为double
第一类、整数类型
byte:8 位,用于表示最小数据单位,如文件中数据,-128~127
short:16 位,很少用,-32768 ~ 32767
int:32 位、最常用,-231-1~231 (21 亿)
long:64 位、次常用
注意事项:int i = 8;这里的8叫做直接量或者字面量,就是直接写出来的常数。整数字面量默认都是int类型,所以在定义的long类型后面要加上L或l(加不加l现在都一样)。小于32位的变量都是按照int结果去计算的。特别提醒的是强转符比数学运算符优先级要高。
long length = 3000; // 因为java默认的整数是int类型 这种情况就代表把你的数字默认为int类型转化为long 所以才不会报错,但是当超过int类型的时候你不加l就会报错
long l = 30l; //变量值携带l
System.out.println(l); // 30
System.out.println(length); // 3000
浮点数:
float单精度
double/Double 双精度
float定义的元素后面必须加上f不然就会报错,通常在使用的时候会使用double,如果写的是Double的话就要在值后面写上d
复制代码
float f = 3.1f;
double n = 4.56;
System.out.println(f); // 3.1
System.out.println(n); // 4.56
Double tt = 300d;
System.out.println(tt); //300.0 如果是整数自动加上一个小数点
复制代码
字符型:char(1字符=2字节)字符是只能有一个的 并且char的后面的字符的引号只能用单引号
char c1 = 'q'; //只能放置一个数字或者字母 不能放置汉子或者其他的
Sysytem.out.println(c1);
布尔类型:boolean
只能取两个值之一: true、false
常常在条件判断 循环结构中使用
boolean bb1 = true;
System.out.println(bb1); // true
循环语句中的使用
if(isMarried){
System.out.println(“你就不可以参加单身party”);
}else{
System.out.println(“你是单身可以来参加单身party”);
}
数据类型的转换:
根据:byte、char、 short --> int --> long --> float --> double 结论:byte容量最小 double容量最大 当容量小的与容量大的进行运算的时候结果自动提升为容量大的,要选择容量大的来接收
补充:当char byte short 三种运算时候都要用int来接收
eg:
复制代码
byte a1 = 34;
int b1 = 127;
//byte ab = a1+b1; // 这样会使精度丢失 不能这样使用因为int别byte大 要用大的去接收
int ab = a1+b1;
System.out .println(ab);
int c = 234;
long g = 234324;
float cg = c + g;
System.out.println(cg); //234558.0
short s1 = 123;
double bu = s1; // 可以直接赋值转换给double的元素
System.out.println(bu);
复制代码
强制转换:当想要把容量大的转化为容量小的就需要强制转化了
eg:
double --> int
double bc = 456;
int ni = (int)bc; // 把double类型的强制转化为int
System.out.println(ni);
int -->double
int bc = 456;
double ni = (int)bc; // 把int类型的强制转化为double
System.out.println(ni);
引用数据类型:字符串:String
声明String类型变量时,使用一堆""(这个时候可以想到char是一堆单引号)
String name = "老王";
System.out.println(name);
String 可以和8种基本数据类型做运算 但是运算只能是连接运算:+
int l_age = 35;
String laowang = "老王年龄:";
String info = laowang+l_age;
System.out. println(info); //老王年龄:35
练习题:
复制代码
public class practice {
public static void main(String [] args){
char c = ‘a’; // 当和int在一起的时候就是ascii码是97当和str在一起的时候就会是字符
int num = 10;
String str = “you”;
System.out.println(c+num+str); // 107you
System.out.println(c+str+num); // ayou10
System.out.println(c+(num+str));//a10you
System.out.println((c+num)+str); // 107you
System.out.println(str+num+c); // you10a
}
}
复制代码
练习二:
复制代码
//要求输出* *
// * *
//只要记住 char单个输出是ASCII码 当和str在一起的时候就是拼接就是正常额str和int或者char在一起就是int的输出
System.out.println("* *"); // * *
System.out.println('*'+'\t'+'*'); // 93
System.out.println('*'+"\t"+'*'); // * *
System.out.println('*'+'\t'+"*"); //51*
System.out.println('*'+('\t'+"*")); // * *
String str2 = 3.5f +""; // 3.5
System.out.println(str2); //3.5
System.out.println(3+4+“Hello”); //7Hello
System.out.println(“Hello”+3+4); //Hello34
System.out.println(‘a’+1+“Hello”); //98Hello
System.out.println(“Hello”+‘a’+1); //Helloa1
复制代码
运算符:
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较
一般分为:
算术运算符
赋值运算符
比较运算符
逻辑运算符
位运算符
三元运算符
其实加减乘法都一样只有除法是进行除的时候取整数不取余数小数
int num1 = 12;
int num2 = 5;
int result1 = num1/num2;
System.out.println(result1); //结果是2 因为int是整数就自动去除余数
取余运算%
开发中经常用%来判断是否能被除尽
复制代码
// %
//可以看出结果的符号与被模号的符号相同 就是第一个数的符号相同
int number1 = 12;
int number2 = 5;
System.out.println(“number1%number2=”+number1%number2); // 2
int number3 = -12;
int number4 = 5;
System.out.println(“number3%number4=”+number3%number4); // -2
int number5 = 12;
int number6 = -5;
System.out.println(“number5%number6=”+number5%number6); //2
int number7 = -12;
int number8 = -5;
System.out.println(“number7%number8=”+number7%number8); //-2
复制代码
如果a对b取余数 那么结果的符号就是和a的相同
自增自减:++ –
前++
后++
前++是先对自己本身增加之后再赋值,后++是赋值之后再对自己本身增加
复制代码
//前++
int a = 10;
int b = ++a;
System.out.println(“a=”+a+"\t"+“b=”+b); //a=11 b=11 先对自己本身进行增加1再赋值
//后++
int a1 = 10;
int b1 = a1++;
System.out.println(“a1=”+a1+"\t"+“b1=”+b1); //a1=11 b1=10 先赋值之后再对自己本身赋值
复制代码
前–
后–
前–是先减去1再进行赋值,后–是先先赋值再去自减1
复制代码
//前–
int ret1 = 10;
int ret2 = --ret1;
System.out.println(“ret1=”+ret1+"\t"+“ret2=”+ret2); // ret1=9 ret2=9 先自己减去1再赋值
//后--
int ret3 = 10;
int ret4 = ret3--;
System.out.println("ret3="+ret3+"\t"+"ret4="+ret4); //ret3=ret9 ret4=10先赋值再去减去1
复制代码
字符号连接的是需要+来进行连接的 上面的就可以看出来
注意点:
short s1 = 10;
s1 = s1+1 //这是错误的 ,因为后面的1默认是int的int比short大 不可以兼容
s1 = s1++ //这是对的
s1 = (short)(s1+1); //这是对的
练习:
复制代码
public class SingTest {
public static void main(String [] args){
int i1 = 10;
int i2 = 20;
int i = i1++;
System.out.print("i="+i); //10
System.out.println("i1="+i1); // 11
i = ++i1;
System.out.print("i="+i); // 12
System.out.println("i1="+i1); // 12
i = i2--;
System.out.print("i="+i); // 20
System.out.println("i2="+i2); // 19
i = --i2;
System.out.print("i="+i); //18
System.out.println("i2="+i2); //18
}
}
复制代码
一个三位数然后输出它的十位百位个位数的值
复制代码
int num = 187;
int bai = num/100;
int shi = num %100/10;
int ge = num%10;
System.out.println(“百位数:”+bai);
System.out.println(“十位数:”+shi);
System.out.println(“个位数:”+ge);
复制代码
思考题目:
复制代码
// 思考一:
short s = 3;
s +=2; //加等于
System.out.println(s); //5
// 思考二:
int i = 1;
i *= 1; // 乘等于
System.out.println(i); // 1
i++;
System.out.println(i); // 2
//思考三:
int m = 2;
int n = 3;
n *= m++;
System.out.println("m="+m); // 3
System.out.println("n="+n); // 6
//思考四
int n = 10;
n+=(n++)+(++n);
System.out.println(n); // 32
龙华大道1号 http://www.kinghill.cn/LongHuaDaDao1Hao/index.html