Java基础_03
2015-12-09 00:00
435 查看
1:问题
import java.util.Scanner;//导入工具包中的Scanner类
public class Hello{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
//声明一个名称,让它等于null
String name = null;//没有值,指向内存的一个特别的空间
while(name==null || name.equals("")){//如果name==null,或是""
System.out.println("请输入你的姓名");
name = sc.nextLine();
}
System.out.println("name is "+name);//在Java代码中,串联字符串,就是+
//不要管年龄的数据类型,只要接收字符串
String age = null;//没有值,指向内存的一个特别的空间
while(age==null || age.equals("")){//如果name==null,或是""
System.out.println("请输入你的Age");
age = sc.nextLine();//sc.nextInt();不要使用方法
}
System.out.println("age is "+age);//在Java代码中,串联字符串,就是+
}
}
2:数据类型
以下,如果声明在方法里面的变量,则为局部变量,必须要设置值以后才可以使用:
Java中有几种直接数:
String name = “Jack “; 其中Jack就是直接数。这个直接数的默认的类型是 String
45 - int
45L long
45F float
45D double
45.4 double
3.目前开发Java比较流行的工具
下载Eclipse
www.eclipse.org
classic
javaee版本- 这个版本- 企业版本。
配置编码类型-将所编码设置utf-8编码:
package cn.oracle;
public class Hello {
public static void main(String[] args) {
System.out.println("Hello");
}
}
快捷key:
ATL+/ - 万能帮助。
package cn.oracle;
public class Hello {
public static void main(String[] args) {
System.out.println("helldlddldl");
}
}
4.数据类型的运算
5:要求用户输入它的姓名,+年龄
但是要求用户的输入的年龄必须是合法的年龄
年龄不是 负数。 存在在一定的范围 :1~100
如何验证用户输入的字符串是 数字?正则表达式。
如何将一个字符串转成int类型 Integer.parseInt(…) : int - 对于字符串到 int的转换不能是强转 (int)String;
要求输入的姓名,且姓名必须要达到6个字符。
Name.length <6
@Test
public void test5() {
Scanner sc = new Scanner(System.in);
while (true) {
System.err.println("plz enter age:");
String age = sc.nextLine();
boolean bo = age.matches("\\d{1,3}");// 正则表达式
if (bo == false) {// 不是数字
System.err.println("plz enter some int...");
continue;
}
// 转成int
int age2 = Integer.parseInt(age);
if (age2 < 1 || age2 > 100) {
System.err.println("plz enter some int in 1..100");
continue;
}
System.err.println("your age is ok:" + age);
break;
}
}
import java.util.Scanner;//导入工具包中的Scanner类
public class Hello{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
//声明一个名称,让它等于null
String name = null;//没有值,指向内存的一个特别的空间
while(name==null || name.equals("")){//如果name==null,或是""
System.out.println("请输入你的姓名");
name = sc.nextLine();
}
System.out.println("name is "+name);//在Java代码中,串联字符串,就是+
//不要管年龄的数据类型,只要接收字符串
String age = null;//没有值,指向内存的一个特别的空间
while(age==null || age.equals("")){//如果name==null,或是""
System.out.println("请输入你的Age");
age = sc.nextLine();//sc.nextInt();不要使用方法
}
System.out.println("age is "+age);//在Java代码中,串联字符串,就是+
}
}
2:数据类型
以下,如果声明在方法里面的变量,则为局部变量,必须要设置值以后才可以使用:
类型 | 取值范围 | 示例 |
byte | -128 ~ 127 | byte b = 4; |
char | 0 ~ 0xffff | char c = ‘A’; char c = ‘你’; char c = ‘\u0000’ |
short | --- | short s =1; short s = 90; |
int | -2E32 ~ 2E32-1 | Int a = 90; Int b = 89; 在Java代码里,直接声明的数字,没有小数位的,都默认是int类型。 |
long | -2E63 ~ 2E63-1 | Long x = 56L; Long y = 534L; |
float | 单精度 | float x = 45.3F; |
double | 双精度 | Double d1 = 45; Double d2 = 45.6; Double d3 = 45.3D; |
boolean | True | false | Boolean boo = true; Boolean boo = false; |
String name = “Jack “; 其中Jack就是直接数。这个直接数的默认的类型是 String
45 - int
45L long
45F float
45D double
45.4 double
命令选项 | ||
Javac命令 | -d 将编译后的源代码,放到它的包下,自动的创建目录结构 | Javac –d . Stud.java Javac –d .\bin Stud.java放到 |
Java命令 | Java –classpath Classpath是指定*.class文件在哪儿 | java -classpath c:\ com.oracle.Stud |
下载Eclipse
www.eclipse.org
classic
javaee版本- 这个版本- 企业版本。
配置编码类型-将所编码设置utf-8编码:
编码 | |
GBK/GB2312 – 国标扩展/ | 中国定义的编码类型 一个中文 两个字节 你 – 2 byte |
UTF-8 | 国际编码识别所有文字 占的字节比较长 一个中文点三个字节 你 – 3 byte |
Iso-8859-1 | 不认识中文。 |
public class Hello {
public static void main(String[] args) {
System.out.println("Hello");
}
}
快捷key:
ATL+/ - 万能帮助。
package cn.oracle;
public class Hello {
public static void main(String[] args) {
System.out.println("helldlddldl");
}
}
4.数据类型的运算
运算符号 | 示例 | |
两元运算符号 + - * / % 取模 取余数 + 不但可以进行数值类型的运算,还可以进行字符串的串联: >> 位运算 右位移 << 左位移 | / 如果 int类型相除,只会获取int部分。 int a = 10; int b = 4; int c = a/b;//都是int System.err.println(c);//2 + 两数相加 结果为 较大一方的数据类型或是int(最小是int) int x1 = 10; int x2 =7; int x3 = x1%x2; //可以通过 %2的方式来判断是否是偶数 System.out.println(x3);//1 //所有类型都可以进行+操作 int a = 1; int b = 45; String str = "Hello"; String ss = a+b+str; System.err.println(ss);//46Hello ss = str+a+b; System.err.println(ss);//Hello145 >> 位运算 右位移 数变小 | |
一元操作符号: ++ some++ : some= som+1 - - some-- : some=som-1; ~ 按位取反 0000110 1111001 | 前++ - 先+1 ,再用这个数 后++ 先用这个数,再+1 int a = 1; int b = a++;//先将a的值设置给b,再做a++ System.err.println(b+" a is:"+a);//1,2 int c = ++a; System.err.println("c is :"+c+", a is:"+a);//3,3 | |
逻辑运算 > < <= >= - 这些只用于比较数值类型 intbytechar,shot,float double = = 可以比较数值类型,也可以比较对象类型 比较是两个对象的内存地址是否一样。 | @Test public void test4() { String name = "Jack";//直接数 String name2 = new String("Jack");//使用new关键字分配新的内存地址 System.err.println(name==name2);//false - 》 比较内存地址是否一样 System.err.println(name.equals(name2));//比较里面的内容是否一样 - true } |
但是要求用户的输入的年龄必须是合法的年龄
年龄不是 负数。 存在在一定的范围 :1~100
如何验证用户输入的字符串是 数字?正则表达式。
如何将一个字符串转成int类型 Integer.parseInt(…) : int - 对于字符串到 int的转换不能是强转 (int)String;
要求输入的姓名,且姓名必须要达到6个字符。
Name.length <6
@Test
public void test5() {
Scanner sc = new Scanner(System.in);
while (true) {
System.err.println("plz enter age:");
String age = sc.nextLine();
boolean bo = age.matches("\\d{1,3}");// 正则表达式
if (bo == false) {// 不是数字
System.err.println("plz enter some int...");
continue;
}
// 转成int
int age2 = Integer.parseInt(age);
if (age2 < 1 || age2 > 100) {
System.err.println("plz enter some int in 1..100");
continue;
}
System.err.println("your age is ok:" + age);
break;
}
}
相关文章推荐
- Java基础_04
- Java基础_05
- JAVA实现精确的加减乘除
- 使用Eclipse-Maven-git做Java开发(12)--使用osc的git服务托管代码
- JAVA开发环境选择与配置
- eclipse javaweb服务开启err
- Android 如何在Eclipse中查看Android API源码以及support包源码
- java 堆栈的简单知识
- java线程死锁-相互调用
- Java中printf()的用法
- Java POI 上下标处理
- struts2 使用注解方式配置
- Java图形界面编程(一)
- Java Web项目引用外部Java项目
- java面向对象-多态
- 第三个spring冲刺第2天
- spring-session源码解读-1
- javaSE(27)(观察者设计模式)
- struts2处理结果类型
- java面向对象-继承