目录
一.变量
1.1数据类型
java中数据类型如下图所示:
1.2字符串类型变量
语法格式:
String 变量名="初始值";
转义字符:
\n | 换行 |
\t | 水平制表符 |
\' | 单引号 |
\" | 双引号 |
\\ | 反斜杠 |
重点:
字符串的+操作表示字符串拼接:
String a="hello";
String b="world";
String c=a+b;
System.out.println(c);
//输出:helloworld
还可以用字符串和整数进行拼接:
String str="ret=";
int a=10;
int b=20;
String ret=str+a+b;
System.out.println(ret);
//结果为
//ret=1020
1.3变量的命名规则
- 一个变量名只能包含数字、字母、下划线;
- 数字不能开头;
- 变量名大小写敏感,即num和NUM是不同的变量;
- 变量名不能和关键字冲突。
变量名推荐小驼峰命名法:当一个变量名由多个单词构成时,除了第一个单词之外,其他单词首字母都大写。
示例:
int maxValue=100;
二.常量
常量主要分为两种:
- 字面值常量:直接写出来的值;
- final关键字修饰的常量:final修饰的属性称为常量,值定义后无法修改,final修饰的变量必须在声明时赋值。
三.类型转换与数值提升
3.1类型转换
- 不同数字类型的变量之间赋值,表示范围更小的的类型能隐式转换成范围更大的类型;
- 如果要将范围大的类型赋值个范围小的,需要强制类型转换,但是可能精度丢失;
byte:
- 当整型字面量赋值给byte时,若该值在byte的保存范围之内,可以直接赋值,否则出错;
- 当进行byte变量之间的运算时,JVM内部会将byte提升成int进行计算。
3.2数值提升
- 不同类型的数据混合运算,范围小的会提升成范围大的;
- 对于short,byte这种比四个字节小的类型,会先提升成四个字节的int,再运算。
3.3 int 和 String 之间互相转换
int转成String:
int num=10;
//方法1
String str1=num+"";
//方法2
String str2=String.valueof(num);
String转成int:
String str="100";
int num=Integer.parseInt(str);
四.分支结构
五.循环结构
六.输入输出
6.1输入
使用Scanner读取字符串/整数/浮点数:
import java.util.Scanner; //需要导入util包
public class Homework {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入你的姓名:");
String name= scanner.next();
System.out.println("请输入你的年龄:");
int age= scanner.nextInt();
System.out.println("请输入你的工资:");
float salary= scanner.nextFloat();
System.out.println("姓名:"+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary);
}
}
结果为:
使用Scanner循环读取N个数字:
while(sc.hasNextDouble()){
}
6.2输出
System.out.println(msg); //带换行
System.out.print(msg); //不带换行
System.out.printf(format,msg); //格式化输出,同C语言中的printf基本一致