Java实例 Part2:Java语言基础
Part2:Java语言基础
**
Example01:从控制台接收输入字符
**
运行结果:

实现代码:
import java.util.Scanner;
public class Example01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你的名字:"); //提示用户输入
String str = scanner.nextLine(); //获取用户输入的一行文本
//打印你输入的内容
System.out.println("你输入的内容是:"+str);
}
}
要点:import java.util.Scanner;//导包
这一个实例中需要引入Scanner类,它是Java的扫描器类,可以从输入流中读取指定类型的数据和字符串。*
**
Example02:自动类型转换与强制类型转换
**
Java基本数据类型之间存在自动类型转换与强制类型转换两种转换方法。低类型数据向高类型数据进行自动类型转换,高类型数据向低类型数据进行强制类型转换。
运行结果:

代码实现:
public class Example02 {
public static void main(String[] args) {
byte b = 127; //byte类型数据的范围是:-128~127
System.out.println("byte="+b);
int i = 12;
System.out.println("累加int等于:"+(b+i));
short s = 23561;
System.out.println("累加short等于:"+(b+i+s));
long l = 400000l;
System.out.println("累加long等于:"+(b+i+s+l));
char c = 'w';
System.out.println("累加char等于:"+(b+i+s+l+c));
float f = 3.1415f;
System.out.println("累加float等于:"+(b+i+s+l+c+f));
double d = 54.523;
System.out.println("累加double等于:"+(b+i+s+l+c+f+d));
//高类型向低类型的强制转换
System.out.println("把long类型强制转换为int:"+(int)l);
System.out.println("把char类型强制转换为byte:"+(byte)c);
System.out.println("把double类型强制转换为int:"+(int)d);
}
}
要点: 转换后的类型 变量 = (转换后的类型)被转换的变量;
**
Example03:加密可以这样简单(位运算)
**
提示:通过位运算的异或运算符“^”把字符串与一个指定的值进行异或运算,从而改变字符串中每个字符的值,这样就可以得到一个加密的字符串。当把加密后的字符串作为程序输入内容,异或运算会把加密后的字符串还原成原有字符串的值。
运行结果:
图1 使用异或加密字符串

图2 使用异或解密字符串

代码实现:
import java.util.Scanner;
public class Example03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入要加密的字符串或要解密的字符串:");
String str = scanner.nextLine(); //获取用户输入的内容
char[] chars = str.toCharArray(); //获取字符数组
for (int i = 0;i<chars.length;i++){ //遍历数组
chars[i] = (char)(chars[i] ^ 2000); //对每个数组元素进行异或运算
}
System.out.println("加密或解密的结果如下:");
System.err.println(new String(chars)); //输出密钥
}
}
要点:程序最后使用的标准错误输出流不是用于输出信息,而是利用其在控制台以红色的特性来突出显示。本实例的关键技术是异或运算,如果某个字符x或数值与另一个数值m异或运算得到y,那么再用y与m进行异或运算就可以还原成x,这就是加密和解密的过程。
**
Example04:用三元运算符判断奇数和偶数
**
运行结果:

实现代码:
import java.util.Scanner;
public class Example04 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int number = scanner.nextInt();
String str = (number % 2 == 0)?"这个数是:偶数":"这个数是:奇数";
System.out.println(str);
}
}
要点:三元运算符
条件运算 ? 运算结果1 : 运算结果2
如果条件运算的结果为true,返回值就是运算结果1,否则就是运算结果2。
**
Example05:不用乘法运算符实现2 x 16
**
提示:左移运算(运算效率非常高)
运行结果:

实现代码:
import java.util.Scanner;
public class Example05 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你想运算的数字:");
int number = scanner.nextInt();
System.out.println("你输入的数字是:"+number);
System.out.println("该数字乘以2的结果为:"+(number<<1));
System.out.println("该数字乘以4的结果为:"+(number<<2));
System.out.println("该数字乘以8的结果为:"+(number<<3));
System.out.println("该数字乘以16的结果为:"+(number<<4));
}
}
要点:如果一个整数左移n位,就相当于这个整数乘以2的n次方。
Java实例 Part2:Java语言基础的更多相关文章
- Java学习笔记:语言基础
Java学习笔记:语言基础 2014-1-31 最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...
- Java环境搭建及语言基础
JRE和JDK JRE:Java Runtime Environment,java运行环境. JDK:Java Development Kit,java开发工具包. 使用JDK开发java程序,交给J ...
- Java入门教程二(语言基础)
常量与变量 常量值又称为字面常量,它是通过数据直接表示 常量 实型常量值 Java 的实型常量值主要有如下两种形式 十进制数形式:由数字和小数点组成,且必须有小数点,如 12.34.-98.0 科学记 ...
- Java实例练习——java实现自动生成长度为10以内的随机字符串(可用于生成随机密码)
package sorttest; import java.util.ArrayList; import java.util.Collections; import java.util.List; i ...
- Java-Runoob-高级教程-实例-方法:05. Java 实例 – 阶乘
ylbtech-Java-Runoob-高级教程-实例-方法:05. Java 实例 – 阶乘 1.返回顶部 1. Java 实例 - 阶乘 Java 实例 一个正整数的阶乘(英语:factoria ...
- Java - 35 Java 实例
Java 实例 本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用. Java 环境设置实例 Java 实例 – 如何编译一个Java 文件? Java 实 ...
- Java-Runoob-高级教程:Java 实例
ylbtech-Java-Runoob-高级教程:Java 实例 1.返回顶部 1. Java 实例 本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用. ...
- Java 实例
Java 实例 本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用. Java 环境设置实例 Java 实例 – 如何编译一个Java 文件? Java 实 ...
- 【Java初探实例篇01】——Java语言基础
示例系列,将对每节知识辅以实际代码示例,通过代码实际编写,来深入学习和巩固学习的知识点. IDE:intellij IDEA: 语言:Java 本次示例:Java语言基础知识的应用. 创建包day_4 ...
随机推荐
- C# Request获取URL常见用法
如果测试的url地址是http://www.test.com/testweb/default.aspx, 结果如下: Request.ApplicationPath: /testweb Request ...
- 【Leetcode】【Medium】Search Insert Position
Given a sorted array and a target value, return the index if the target is found. If not, return the ...
- echarts tooltip太多会超出显示范围-解决
以下两种解决方式,能够应对大部分出现此类问题项目 tooltip.position: 提示框浮层的位置,默认不设置时位置会跟随鼠标的位置. 可选:string, Array, Function 一.解 ...
- ACM HDU-2952 Counting Sheep
Counting Sheep Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...
- selenium+python 数据驱动-txt篇
#循环读取txt文件中的数据,可以作为用户名,密码等使用from selenium import webdriver #创建两个列表user=[]pwd=[]f=open(r'C:\bbs\data\ ...
- mysql 查询大量数据报错
错误:Incorrect key file for table '/tmp/#sql_... 由于一次查询出大量数据,并且使用了临时表,导致产生此错误,主要是存放临时表文件的/tmp目录大小不足导致.
- vim使用常看
原网址http://www.runoob.com/linux/linux-vim.html 补充参考https://blog.csdn.net/w178191520/article/details/8 ...
- 一个几百行代码实现的http服务器tinyhttpd
/* J. David's webserver */ /* This is a simple webserver. * Created November 1999 by J. David Blacks ...
- Path模块部分常用函数解析——NodeJS
官网地址:https://nodejs.org/api/path.html path.resolve([...paths])# Added in: v0.3.4 参数[...paths]: <S ...
- websphere 配置库中已存在应用程序,异常处理
from:http://mengdboy.iteye.com/blog/1677379 出现此问题的原因之一:操作界面上没有卸载完成. 进行一下操作: 1.删除 $WAS_HOME/profiles/ ...