Java学习笔记(3)
1.Math类提供三类方法
三角函数
| sin(radians) | 返回弧度的正弦值 |
| cos(radians) | 返回弧度的余弦值 |
| tan(radians) | 返回弧度的正切值(余切求倒数即可) |
| toRadians(degree) | 角度转弧度 |
| toDegree(radians) | 弧度转角度 |
| asin(a) | 正弦值返回弧度 |
| acos(a) | 余弦值返回弧度 |
| atan(a) | 正切值返回弧度 |
指数函数
| exp(x) | 返回e的x次幂(ex) |
| log(x) | 返回x的自然对数(ln(x)=loge(x)) |
| log10(x) | 返回x的以10为底的对数(log10(x)) |
| pow(a, b) | 返回a的b次幂(ab) |
| sqrt(x) | 返回x的开方(√x) |
取整方法
| ceil(x) | 向上取整 |
| floor(x) | 向下取整 |
| rint(x) | 返回最近的整数,如果与两个整数的距离相同,返回偶数的那个 |
| round(x) | 返回Math.floor(x+0.5)的整数,如果x是float,int;如果x是double,返回long |
其他方法min(a, b), max(a, b), abs(a), random()
Math类在java.lang包下面,所有java.lang包下面的类都不需要显式导入(import)
写代码时,可以用ASCII码,也可用Unicode表示一个字符,如
char letter = 'A';
char letter = '\u0041';
这两个语句的效果是一样的。
整数转char时,只有最后16位会参与转换,其他的会被忽略,如
char ch = (char)0XAB0041;
System.out.println(ch);
只有0041参与转换,AB被忽略,所以打印出"A"
浮点型转char时,先转成int,再转成char
对两个char进行比较,实际就是对它们的Unicode进行比较
Character位于java.lang包下,提供如下方法:
isDigit(ch), isLetter(ch), isLetterOrDigit(ch), isLowerCase(ch), isUpperCase(ch), toLowerCase(ch), toUpperCase(ch)
String, System, Scanner都是java的预定义类,String不是原始类型而是引用类型
String类提供如下方法:
length(), charAt(ch), concat(s1), toUpperCase(), toLowerCase(), trim()
调用string.trim()方法时,会把头尾的' ', \t, \f, \n, \r都去掉
当用Scanner从控制台读取字符串时,Scanner.next()以空白字符为标识,Scanner.nextLine()以换行符为标识
Java学习笔记(3)的更多相关文章
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- 0025 Java学习笔记-面向对象-final修饰符、不可变类
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- Java学习笔记-多线程-创建线程的方式
创建线程 创建线程的方式: 继承java.lang.Thread 实现java.lang.Runnable接口 所有的线程对象都是Thead及其子类的实例 每个线程完成一定的任务,其实就是一段顺序执行 ...
- 0013 Java学习笔记-面向对象-static、静态变量、静态方法、静态块、单例类
static可以修饰哪些成员 成员变量---可以修饰 构造方法---不可以 方法---可以修饰 初始化块---可以修饰 内部类(包括接口.枚举)---可以修饰 总的来说:静态成员不能访问非静态成员 静 ...
随机推荐
- RePr: Improved Training of Convolutional Filters
关键点: 1.关于filter正交 将一层中的一个$k \times k \times c$的卷积核展开为$k * k * c$的向量,表示为$f$.一层中有$J_{\ell}$个卷积核,$\bold ...
- centos 7 安装二进制mysql 详细步骤
1 下载地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 复制这个链接在 ...
- Vue 知识整理—01-基础
一:Vue是什么? Vue是一个JS框架. Vue.js是一套构建用户界面的渐进式框架. 库和框架的区别: ☞库:提供一些 API 工具函数,体现了封装的思想,需要我们主动调用: ☞框架:提供一套完整 ...
- webpack打包vue项目,资源路径如何从绝对路径改为相对路径?css中的图片资源如何修改配置?
资源相对引用路径 问题描述 一般情况下,通过webpack+vuecli默认打包的css.js等资源,路径都是绝对的. 但当部署到带有文件夹的项目中,这种绝对路径就会出现问题,因为把配置的static ...
- MySQL备份脚本-亲试ok
#!/bin/bash # 以下配置信息请自己修改mysql_user="USER" #MySQL备份用户mysql_password="123456" #My ...
- 自己常用vs code 插件
subline 快捷键配置插件 Auto Close Tag — 自动闭合HTML标签 Auto Rename Tag — 修改HTML标签时,自动修改匹配的标签 background — 背景 ...
- mysql8.0修改密码无效的问题
今天安装了mysql8,但是在修改默认密码的时候发现一直无法成功,下面给出解决的办法. 一直报ERROR 1064 (42000): You have an error in your SQL syn ...
- ReactJS之遍历对象的方法
const obj = { channel: “wevmvmklskdosll12k;0”, index:0 }; Object.keys(obj).map(key => console.log ...
- STL 小白学习(9) 对组
void test01() { //构造方法 pair<, ); cout << p1.first << p1.second << endl; pair< ...
- Tsinghua 2018 DSA PA3简要题解
CST2018 3-1-1 Sum (15%) 简单的线段树,单点修改,区间求和. 很简单. CST2018 3-1-2 Max (20%) 高级的线段树. 维护区间最大和,区间和,左边最大和,右边最 ...