Java探索之旅(1)——概述与控制台输入
使用的课本:
Java语言程序设计(基础篇)----西电 李娜(译)
原著: Introduction to Java Progrmming(Eighth Edition) -----Y.Daniel Liang
使用Eclipse编译器。
1.计算机、程序和Java概述
❶Java流行的原因:简单,面向对象,分布式,解释型,鲁棒,结构中立,安全,可移植,高性能,多线程,动态。一旦编写,任何的地方可运行。
❷区分大小写。如main不能写成Main。标识符由字母,下划线,美元“$”,数字组成。但数字不作开头。习惯上美元不用来构成标识符。标识符不能是
null,false,true和保留字,可以设置为任意长度。
❸源程序扩展名为.java,java编译器(编译指令 javac)将源程序翻译为字节码(与源程序同名,以.class后缀),字节码类似机器指令但是体系中立,可在不同的硬件平台和操作系统运行(只要带Java虚拟机,即JVM)。执行Java程序程序就是逐步运行字节码的,即将依次将单独的一步翻译成目标机器语言代码,并执行(翻译一步执行一步)。
❹Java程序至少有一个类。类名按照惯例以大写字母开头。注释与C++方法一样。每个Java程序都是类的集合,以class开头,每个java程序至少有一个主方法(main,程序入口)
2.控制台输入
首先导入java.util.Scanner;使用步骤:
(1) Scanner input=new Scanner(System.in);创建Scanner对象并将其引用赋值给input。
(2) imput使用--input.*:
nextByte() //读取 byte 带符号整数 128---127 1字节
nextShort() //读取 short 带符号整数 -32768---32767 2字节
nextInt() //读取 int 带符号整数 -2.^31---2.^31-1 4字节
nextLong() //读取long 带符号整数 -2.^63---2.^63-1 8字节
nextDouble() //读取double双精度
nextFloat() //读取float单精度
next() //读取字符串,以空白字符('','\t','\f','\r','\n',空白,制表,换纸,回车,换行)之前结束
nextline() //读取一行文本,以回车字符('\r')结束
3.代码
①循环输出“welcome to java”三次
②显示GUI消息对话框
③控制台输入(默认键盘),调用函数
package messageDialogBox;
import javax.swing.JOptionPane;
import java.util.Scanner;
public class MeasageDialogBox { private static final int JOptionPane_INFORMATION_MESSAGE = 0;
static double add(int x,double y)
{
return x+y;
} public static void main(String[] args) {
for(int i=0;i<3;i++)
System.out.println("Welcome to Java");
JOptionPane.showMessageDialog(null, "wlecom to Java","Display Window",JOptionPane_INFORMATION_MESSAGE); Scanner input=new Scanner(System.in);
System.out.print("Input a int and a double variable\n");
int x=input.nextInt();
double y=input.nextDouble(); System.out.println(add(x,y));
input.close();
}
}
知识点
1.循环结构for同C++使用。输出使用到System类,其包含在Java.lang包中且被隐式导入。 System.out.print()和println(),区别是后者会将光标移到下一行。可以使用字符串连接符“+”将字符常量换行输出,如:
System.out.println("ABCDEF" +
"FGDJPE");//字符常量换行输出
2.import导入预定义类javax.swing.JOptionPane。对话框函数showMessageDialog()为静态调用,至少包含前2个参数。除开第一个参数null,后两个参数分别为对话框显示字符和对话框名。
import javax.swing.JOptionPane//import明确导入
import javax.swing.*//import通配符导入,即一个包中所有的类
Java探索之旅(1)——概述与控制台输入的更多相关文章
- Java探索之旅(14)——文本I/O与读写
1文件类File ❶封装文件或路径的属性.不包括创建和读写文件操作.File实例并不会实际创建文件.不论文件存在与否,可以创建任意文件名的实例.两种实例创建方式如下: ...
- Java探索之旅(5)——数组
1.声明数组变量: double[] array=new double[10]; double array[]=new double[10]; double[ ...
- java.util.Scanner应用详解++扫描控制台输入
java.util.Scanner应用详解 java.util.Scanner是Java5的新特征,主要功能是简化文本扫描.这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java ...
- Java探索之旅(16)——异常处理
1.异常与异常处理 在<java编程思想>中这样定义 异常:阻止当前方法或作用域继续执行的问题.虽然java中有异常处理机制,但是要明确一点,决不应该用"正常"的态度来 ...
- Java探索之旅(13)——字符串类String
1.初始化 String类是Java预定义类,非基本类型而是引用类型. public class StudyString { public static void main(String[] args ...
- Java探索之旅(3)——选择与循环
1.选择结构与输出 ❶Switch语句: Switch表达式必须算出 char,byte,short,int类型数值之一,总是括号括住:Value1----ValueN,对应有相同数据类型且为常量或者 ...
- Java探索之旅(18)——多线程(2)
1 线程协调 目的对各线程进行控制,保证各自执行的任务有条不紊且有序并行计算.尤其是在共享资源或者数据情况下. 1.1 易变volatile cache技术虽然提高了访问数据的效率,但是有可能导致主存 ...
- Java探索之旅(17)——多线程(1)
1.多线程 1.1线程 线程是程序运行的基本执行单元.指的是一段相对独立的代码,执行指定的计算或操作.多操作系统执行一个程序时会在系统中建立一个进程,而在这个进程中,必须至少建立一个线程(这个线程被 ...
- Java探索之旅(15)——包装类和字符类
1.包装类 ❶出于对性能的考虑,并不把基本数据类型作为对象使用,因为适用对象需要额外的系统花销.但是某些Java方法,需要对象作为参数,例如数组线性表ArrayList.add(Object).Jav ...
随机推荐
- 改善程序与设计的55个具体做法 day4
今天晚上回到小区门口,买了点冬枣,要结账的时候想起来,钥匙没带,落公司了! TNND,没办法再回趟公司,拿了钥匙,来回一个小时,汗~ 条款10:令operator=返回一个reference to * ...
- LeetCode:验证回文串【125】
LeetCode:验证回文串[125] 题目描述 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 示例 1: 输入: ...
- iOS JSON 和 Mode l转换
MJExtension 是我们项目开发常用的一个第三方框架 很好用. https://github.com/CoderMJLee/MJExtension 映射 json value key 直 ...
- 【leetcode刷题笔记】Anagrams
Given an array of strings, return all groups of strings that are anagrams. Note: All inputs will be ...
- STM32F4XX高效驱动篇1-UART
之前一直在做驱动方面的整理工作,对驱动的高效性有一些自己的理解这里和大家分享一下.并奉驱动程序,本程序覆盖uart1-8. 串口驱动,这是在每个单片机中可以说是必备接口.可以说大部分产品中都会使用,更 ...
- 0424 collections模块、time模块、rondom模块、sys模块
昨日回顾:hashlib 摘要 md5 sha系列 文件的一致性校验 密文的认证 logging 记录日志 两种用法 basicConfig不常用 getLogger()常用 可以通过一个参数去控制全 ...
- Delphi程序的自动升级功能的实现(AutoUpdate使用指南)
在UtiMnid组件下,利用auAutoUpgrader实现自动升级(已经测试通过) 第一步:下载AutoUpgrader.Pro.v4.6.4. 第二步:打开AutoUpgrader.Pro.v4. ...
- css的伪类选择器的使用
伪类选择器,在不同情况下显示的css,伪类选择器在处理页面的美观是很大帮助.其实很多美丽的按钮或者页面都是有这些基础的知识实现的,掌握好基础很重要. 名字 实例 说明 :link a:link 选择所 ...
- Alembic Migrations
Introduction The migrations in the alembic/versions contain the changes needed to migrate from older ...
- Spark- 优化后的 shuffle 操作原理剖析
在spark新版本中,引入了 consolidation 机制,也就是说提出了ShuffleGroup的概念.一个 ShuffleMapTask 将数据写入 ResultTask 数量的本地文本,这个 ...