2基本类型数组和枚举类型——重拾Java
2.1 标识符和关键字
2.1.1标识符
标识符:用来标志类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。简单地说,标识符就是一个名字。
Java关于标识符的语法规则
标识符由字母、下划线、美元符号和数字组成,长度不受限制。
标志符的第一个字符不能数字字符。
标识符不能是关键字
标志符不能是true,false和null(尽管true,false和null不是java关键字)
标识符中的字母是区分大小写的,hello和Hello是不同的标志符
2.1.2 关键字
关键字就是java 语言中已经被赋予特定意义的一些单词。不可以把关键字作为标识符来用。下面是java 的50个关键字
abstract、assert、boolean、break、byte、case、catch、char、class、const、continue、default、do、double、else、enum、extends、final、finally、float、for、goto、if、implements、import、instanceof、int、interface、long、native、new、package、private、protect、public、return、short、static、strictfp、super、switch、synchronized、this、throws、transitent、try、void、volatile、while
2.2 基本数据类型
2.2.1逻辑类型
boolean: true/false
2.2.2整数类型
| 序号 | 类型 | 范围 |
| 1 | int |
-2的31次方~2的31次方-1 |
| 2 | byte | -2的7次方~2的7次方-1 |
| 3 | short | -2的15次方~2的15次方-1 |
| 4 | long | -2的63次方~2的63次方-1 |
2.2.3字符类型
转义字符:
| 序号 | 字符 | 含义 |
| 1 | \n | 换行 |
| 2 | \b | 退格 |
| 3 | \t | 水平制表 |
| 4 | \' | 单引号 |
| 5 | \" | 双引号 |
| 6 | \\ | 反斜杠 |
2.2.4浮点类型
| 序号 | 字符 | 含义 |
| 1 | float | 常量后面必须要有f或者F |
| 2 | double | 常量后面可以有d或者D |
2.2.5基本数据类型的转换
级别低的变量的值赋值给级别高的变量时,系统自动完成数据类型的转换
级别高的变量赋值给级别低的变量时,必须使用显示类型转换运算
3 从命名行输入输出数据
2.3.1 输入基本类型数据
Scanner reader = new Scanner(System.in);
reader.nextDouble();
2.3.2输出基本类型数据
| 序号 | 描述 | 说明 |
| 1 | %d | 输出Int类型数据 |
| 2 | %c | 输出char型数据 |
| 3 | %f | 输出浮点型数据,小数部分最多保留6位 |
| 4 | %s | 输出字符串数据 |
| 5 | %md | 输出int型数据,占m列 |
| 6 | %m.nf | 输出浮点型数据占m列,小数点保留n位 |
2.4数组
2.4.1声明数组
float boy[];
char cat[][];
2.4.2创建数组
float boy[] = new float[4];
int mytwo[][] = new int [3][4];
2.4.3数组元素的使用
2.4.4 length的使用
float a[]=new float[12];
2.4.5数组的初始化
float boy[] = {21.3f,23.89f};
2.4.6数组的引用
数组是引用类型
2.4.7表示格式
Arrays.toString(a);
2.4.8复制数组
(1)arraycopy方法
(2)copyOf和copyOfRange
2.4.9排序与二分查找
sort
2.5枚举类型
enum Season{
春季,夏季,秋季,冬季
}
问答题
1 以下代码输出是什么?
public class Hello{
public static void main(String args[]){
double a = 123456.783124;
System.out.printf("%12.3f,%12.5f",a,a);
}
}
123456.781,123456.78125
参考答案
2 以下代码输出是什么?
public class Hello{
public static void main(String args[]){
double a = 123456.783124f;
System.out.printf("%12.3f,%12.5f",a,a);
}
}
123456.783,123456.78312
运行结果
3 编写一个应用程序,给出汉字“你”,“我”,“他”在Unicode表的位置
package test;
public class TestMain {
public static void main(String[] args) {
char you = '你';
char i = '我';
char other = '他';
System.out.printf("你的位置是:%d\n我的位置是:%d\n他的位置是:%d\n",(int)you, (int)i, (int)other);
}
}
参考答案
你的位置是:20320
我的位置是:25105
他的位置是:20182
2基本类型数组和枚举类型——重拾Java的更多相关文章
- 【Java】 重拾Java入门
[概论与基本语法] 取这个标题,还是感觉有些大言不惭.之前大三的时候自学过一些基本的java知识,大概到了能独立写一个GUI出来的水平把,不过后来随着有了其他目标,就把这块放下了.之后常年没有用,早就 ...
- C 数组、枚举类型enum
传递数组给函数 告诉编译器函数要接受一个指针 skip //函数声明,数组的长度无需声明,因为编译器不会对形式参数进行边界检查 void myFunction(int param[]) //或者 vo ...
- Spring的controller接受Date类型数据,接受枚举类型数据
1. Controller接收Date类型的数据 核心使用@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") 来将传递过来的时间字符串 ...
- Go 自定义类型来实现枚举类型限制
今天使用iota 发现一个问题.定义别名类型的时候 调用函数报错.废话不多说,我们看一段示例(关于iota的用法这里就不介绍了,手册介绍滴比较详细): package main import &quo ...
- 重拾Java Web应用的基础体系结构
目录 一.背景 二.Web应用 2.1 HTML 2.2 HTTP 2.3 URL 2.4 Servlet 2.4.1 编写第一个Servlet程序 2.5 JSP 2.6 容器 2.7 URL映射到 ...
- 重拾java系列一java基础(3)
这一章主要复习下以前所接触的算法, (1)选择排序法:在要排序的一组数中,选出最小的一个数与第一个位置的数交换:然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较 ...
- 重拾java系列一java基础(1)
前言,不知不觉,从接触java到工作至今已有两年的时间,突然感觉自己的基础知识还很薄弱,有些知识虽然知道,但是停留在表面上,没有深挖,或者实践过,感觉掌握的很肤浅,而且时间一长,就觉得忘记了,我觉得这 ...
- 3类与对象——重拾Java
面向对象编程的3个特性 1 封装性 面向对象编程核心思想之一就是将数据和对数据的操作封装在一起.通过抽象,即从具体的实例中抽取共同的性质形成一般的概念,比如类的概念. 在实际生活中,我们每时每刻都在与 ...
- 重拾java系列一java基础(2)
1.分支流程控制 if(布尔表达式/分支条件){ //语句块} if(布尔表达式/分支条件){ //语句块1}else{ //语句块2} if(条件1){ //语句块1}else if(条件2 ...
随机推荐
- yield对性能提升的一次小小测试
生成器提供了一种更容易的方法来实现简单的对象迭代,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大大降低.生成器允许你在 foreach 代码块中写代码来迭代一组数据而不需要在内存中 ...
- 在VS2008中加入ExtJS智能提示
在VS2008中加入ExtJS智能提示 在VS2008中加入ExtJS智能提示—>(方法一) 关于如何在VS2008中加入ExtJS的智能提示的方法,我这里有2种方法,相对于第二种方法,第一 ...
- QWidget背景(透明)问题
一. 背景設定為成黑色,前景色設為白色. 方法一.paltette方式,經測試,該方法不會影響到其他控制元件,建議使用 QPalette bgpal = palette();bgpal.setColo ...
- 在react-native中使用es7语法中的decorator装饰器
在react-native中默认使用decorator会红屏报错,需要安装一个babel插件: babel-plugin-transform-decorators-legacy 然后在根目录下的.ba ...
- 【VS】使用vs2017自带的诊断工具(Diagnostic Tools)诊断程序的内存问题
前言 一般来说.NET程序员是不用担心内存分配释放问题的,因为有垃圾收集器(GC)会自动帮你处理.但是GC只能收集那些不再使用的内存(根据对象是否被其它活动的对象所引用)来确定.所以如果代码编写不当的 ...
- Logstash之四:logstash接收kafka数据
3.kafka+logstash整合logstash1.5以后已经集成了对kafka的支持扩展,可以在conf配置中直接使用 vim /etc/logstash/conf.d/pay.conf inp ...
- 服务注册发现Eureka之三:Spring Cloud Ribbon实现客户端负载均衡(客户端负载均衡Ribbon之三:使用Ribbon实现客户端的均衡负载)
在使用RestTemplate来消费spring boot的Restful服务示例中,我们提到,调用spring boot服务的时候,需要将服务的URL写死或者是写在配置文件中,但这两种方式,无论哪一 ...
- 开源框架:Apache的DBUtils框架
开源框架:Apache的DBUtils框架 Commons DbUtils 1.4 API 开源框架:DBUtils使用详解 Download Apache Commons DbUtils 官方文档
- python-appium520-3引入unittest,编写自动化用例
unittest是python的测试框架,和junit相似. test.py import unittest class Apptest(unittest.TestCase): def setUp(s ...
- 1114 Family Property (25 分)
1114 Family Property (25 分) This time, you are supposed to help us collect the data for family-owned ...