Java_部分杂七杂八的方法
小插曲
package cn.Alan_DS;
import java.util.Random;
/**
* @author 15328
* 随机给出0-12之间的数字,并显示对应月份
*/
public class ThirdFirst {
public static void showString(int x) {
switch (x) {
case 1:
System.out.println(x + " = Jan");
break;
case 2:
System.out.println(x + " = Feb");
break;
case 3:
System.out.println(x + " = Mar");
break;
case 4:
System.out.println(x + " = Apr");
break;
case 5:
System.out.println(x + " = May");
break;
case 6:
System.out.println(x + " = Jun");
break;
case 7:
System.out.println(x + " = Jul");
break;
case 8:
System.out.println(x + " = Aug");
break;
case 9:
System.out.println(x + " = Sep");
break;
case 10:
System.out.println(x + " = Oct");
break;
case 11:
System.out.println(x + " = Nov");
break;
case 12:
System.out.println(x + " = Dec");
break;
default:
System.out.println("out of 0-12 ");
}
}
public static void main(String[] args) {
int randX;
int x = 24;
while(x > 0) {
RandProduce randExample = new RandProduce();
randX = randExample.x;
showString(randX + 1);
x--;
}
}
}
class RandProduce {
Random rand = new Random();
int x = rand.nextInt(12);
}
package cn.Alan_DS;
/**
* @author 15328
*/
public class MathMethod {
public static void main(String[] args) {
TrigonmetricMethod x1 = new TrigonmetricMethod();
ExponentMethod x2 = new ExponentMethod();
SeriveceMethod x3 = new SeriveceMethod();
x1.showMethod();
x2.showMethod();
x3.showIntMethod();
x3.showOthers();
}
}
class TrigonmetricMethod{
/**三角函数方法*/
public void showMethod(){
System.out.println(Math.toDegrees(Math.PI / 2)); //弧度转为角度 //返回值为角度的数值
System.out.println(Math.toRadians(90.0));//角度转为弧度 //返回值为弧度的数值
System.out.printf("%.2f\n",Math.sin(Math.PI / 6.0));//返回以弧度制为单位的正弦值
System.out.printf("%.2f\n",Math.cos(Math.PI / 3.0));//返回值为弧度的数值
System.out.println(Math.asin(0.5));//返回值为弧度的数值
System.out.println(Math.acos(0.5));//返回值为弧度的数值
System.out.println(Math.atan(1.0));//返回值为弧度的数值
}
}
class ExponentMethod{
/**指数函数方法*/
public void showMethod(){
System.out.println(Math.exp(3.5));//e^3.5
System.out.println(Math.log(3.5));//ln(3.5)
System.out.println(Math.log10(3.5));//log10(3.5)
System.out.println(Math.pow(4,10));//4^10
System.out.println(Math.sqrt(3.5));//根号3.5
}
}
class SeriveceMethod{
public void showIntMethod(){
System.out.println(Math.ceil(2.1));//向上取整
System.out.println(Math.floor(2.1));//向下取整
System.out.println(Math.rint(2.6));//返回最接近的整数,距离相等则返回偶数数值
System.out.println(Math.round(2.8));//x为floor,返回(int)Math.floor(x+0.5); x为double,返回(long)Math.floor(x+0.5);
}
public void showOthers(){
System.out.println(Math.min(4,12));
System.out.println(Math.max(15,22));
System.out.println(Math.abs(-55));//返回绝对值
System.out.println(Math.random());//0.0 <= Math.random() < 1.0 的double数值
}
}
package cn.Alan_DS;
import java.util.Locale;
/**
* @author 15328
*/
public class StringMethod {
public static void main(String[] args) {
CharMethod ch1 = new CharMethod();
ch1.showCharMethod();
ch1.showStringMethod();
ch1.toMath();
}
}
class CharMethod{
String x = "java\\jdk16";
String t = "12345";
String s = "123.789";
String y = "java//jdk8.0.3";
public void showCharMethod(){
System.out.println(Character.isDigit('5'));//指定字符是数字,返回TRUE
System.out.println(Character.isLetter('k'));//指定字符是字母,返回TRUE
System.out.println(Character.isUpperCase('p'));//是大写字母
System.out.println(Character.isLetterOrDigit('4'));//是字母或者数字
System.out.println(Character.isLowerCase('o'));//是小写字母
}
public void showStringMethod(){
System.out.println(x.length());
System.out.println(x.charAt(5));//返回字符串中指定位置的字符
System.out.println(x.concat(y));//将x与y连接,返回一个新的字符串
System.out.println(x.toLowerCase());//返回一个新字符串,所有字母小写
System.out.println(x.toUpperCase());//返回一个新字符串,所有字母小写
System.out.println(x.equals(y));
System.out.println(x.equalsIgnoreCase(y));//无论大小写比较大小
System.out.println(x.compareTo(y));//返回一个大于0、等于零、小于0的整数,表明字符串x是否大于等于小于y
System.out.println(x.startsWith("java"));//是否以特定前缀开始
System.out.println(x.endsWith("jdk16"));//是否以特定后缀结束
System.out.println(x.contains("dk"));//是否包含此子串
System.out.println(x.substring(5));//返回从指定位置字符到字符串结尾的子串
System.out.println(x.substring(2,6));//返回从beginIndex位置到endIndex-1位置的字符串
System.out.println(x.indexOf('a'));//返回第一个出现ch字符的下标,如果没有返回-1
System.out.println(x.indexOf("jdk"));
System.out.println(x.indexOf("jdk",2));//fromIndex位置之后出现第一个该子串的下标
System.out.println(x.indexOf('j',5));//返回fromIndex位置以及它之后出现的第一个ch的下标
System.out.println(x.lastIndexOf('j'));
}
public void toMath(){
System.out.println(Integer.parseInt(t));
System.out.println(Double.parseDouble(s)+Integer.parseInt(t));
}
}
package cn.Alan_DS;
import java.util.Arrays;
/**
* @author 15328
* 可变长参数列表
* Arrays类
*/
public class ArrayMethod {
public static void main(String[] args) {
printMax(34,3,3,2,56.5);
printMax(new double[]{1, 22.6, 8});
arraysMethod(new double[]{1,2,5,55.9,99.112,333.568,0.456789});
}
public static void printMax(double...numbers){
/**可变长参数列表*/
if(numbers.length == 0){
System.out.println("No arguments passed");
return;
}
double result = numbers[0];
for(int i = 1; i < numbers.length; i++) {
if(numbers[i]>result){
result = numbers[i];
}
}
System.out.println("The Max value is " + result);
}
public static void arraysMethod(double [] list){
/**Arrays类*/
Arrays.sort(list);
System.out.println(Arrays.toString(list));
Arrays.sort(new double[]{12,26.8,99.0},1,3);//fromindex到toindex-1的位置下标进行排序
System.out.println(Arrays.binarySearch(list,12));
//对已经排好序的数组进行二分查找,找key的值,找到返回下标,
// 找不到,返回-(应该插入的位置下标+1)
System.out.println(Arrays.equals(list,new double[]{11.0,12.5,99.99}));
Arrays.fill(list,10);//fill 10 to the whole array
System.out.println(Arrays.toString(list));
Arrays.fill(list,1,5,8);//fill 1-4, with the 8
System.out.println(Arrays.toString(list));
}
}