• Java 练习(static 关键字)


    数组排序

    ArrayUtil.java

    package com.klvchen.java1;
    
    public class ArrayUtil {
    	//求数组的最大值
    	public static int getMax(int[] arr) {
    		int maxValue = arr[0];
    		for (int i = 1; i < arr.length; i++) {
    			if (maxValue < arr[i]) {
    				maxValue = arr[i];
    			}
    		}
    		return maxValue;
    	}
    	
    	//求数组最小的值
    	public static int getMin(int[] arr) {
    		int minValue = arr[0];
    		for(int i = 1; i < arr.length; i++) {
    			if (minValue > arr[i]) {
    				minValue = arr[i];
    			}
    		}
    		return minValue;
    	}
    	
    	//求数组的总和
    	public static int getSum(int[] arr) {
    		int sum = 0;
    		for (int i = 0; i < arr.length; i++) {
    			sum += arr[i];
    		}
    		return sum;
    	}
    	
    	//求数组的平均值
    	public static int getAvg(int[] arr) {
    		return getSum(arr) / arr.length;
    	}
    	
    	//反转数组
    	public static void reverse(int[] arr) {
    		for(int i = 0; i< arr.length/2; i++) {
    			int temp = arr[i];
    			arr[i] = arr[arr.length -i -1];
    			arr[arr.length -i -1] = temp;
    		}
    	}
    	
    	//复制数组
    	public static int[] copy(int[] arr) {
    		int[] arr1 = new int[arr.length];
    		for (int i = 0; i < arr1.length; i++) {
    			arr1[i] = arr[i];
    		}
    		
    		return arr1;
    	}
    	
    	//数组排序
    	public static void sort(int[] arr) {
    		for(int i = 0; i< arr.length - 1; i++) {
    			
    			for(int j = 0; j < arr.length -1 -i; j++) {
    				
    				if(arr[j] > arr[j + 1]) {
    					swap(arr, j , j + 1);
    				}
    			}
    		}
    	}
    	
    	//交换数组中指定两个位置元素的值
    	private static void swap(int[] arr, int i, int j) {
    		int temp = arr[i];
    		arr[i] = arr[j];
    		arr[j] = temp;
    	}
    	
    	//遍历数组
    	public static void print(int[] arr) {
    		for (int i = 0; i< arr.length; i++) {
    			System.out.println(arr[i] + "	");
    		}
    		System.out.println();
    	}
    	
    	//查找指定元素
    	public static int getIndex(int[] arr, int dest) {
    		//线性查找:
    		for(int i = 0; i < arr.length; i++) {
    			if(dest == arr[i]) {
    				return i;
    			}
    		}
    		return -1;
    	}
    }
    

    ArrayUtilTest.java

    package com.klvchen.java1;
    
    public class ArrayUtilTest {
    	public static void main(String[] args) {
    		
    		int[] arr = new int[] {32, 34, 32, 5, 3, 54,654,-98, 0, -53, 5};
    		int max = ArrayUtil.getMax(arr);
    		System.out.println("最大值为: " + max);
    		
    		System.out.println("排序前为: ");
    		ArrayUtil.print(arr);
    		
    		ArrayUtil.sort(arr);
    		System.out.println("排序前后: ");
    		ArrayUtil.print(arr);
    		
    	}
    	
    }
    

    创建圆

    package com.klvchen.java1;
    
    public class CircleTest {
    	public static void main(String[] args) {
    		Circle c1 = new Circle();
    		Circle c2 = new Circle();
    		Circle c3 = new Circle(3.14);
    		
    		System.out.println("c1的id: " + c1.getId());
    		System.out.println("c2的id: " + c2.getId());
    		System.out.println("c3的id: " + c3.getId());
    		
    		System.out.println("创建的圆的个数为: " + Circle.getTotal());
    		
    	}	
    }
    
    class Circle{
    	private double radius;
    	private int id;   //自动赋值
    	
    	private static int total; //记录创建圆的个数
    	private static int init = 1001; //static声明的属性被所有对象所共享
    	
    	public Circle() {
    		id = init++;
    		total++;
    	}
    	
    	public Circle(double radius) {
    		this();
    		this.radius = radius;
    	}
    	
    	public double findArea() {
    		return 3.14 * radius * radius;
    	}
    
    	public double getRadius() {
    		return radius;
    	}
    
    	public static int getTotal() {
    		return total;
    	}
    
    	public void setRadius(double radius) {
    		this.radius = radius;
    	}
    
    	public int getId() {
    		return id;
    	}
    }
    

    银行账号

    编写一个类实现银行账户的概念,包含的属性有"帐号”、“密码”、“存款余额”、“利率”、“最小余额”,定义封装这些属性的方法。账号要自动生成。
    编写主类,使用银行账户类,输入、输出3个储户的上述信息。考虑:哪些属性可以设计成static属性。
    Account.java

    package com.klvchen.java1;
    
    public class Account {
    	private int id;
    	private String pwd = "000000";
    	private double balance;
    	
    	private static double interestRate;
    	private static double minMoney = 1.0;
    	private static int init = 1001;  //用于自动生成id使用的
    	
    	
    	
    	public Account() {
    		super();
    	}
    	
    	public Account(String pwd, double balance) {
    		super();
    		this.pwd = pwd;
    		this.balance = balance;
    	}
    	
    	public String getPwd() {
    		return pwd;
    	}
    	public void setPwd(String pwd) {
    		this.pwd = pwd;
    	}
    	public static double getInterestRate() {
    		return interestRate;
    	}
    	public static void setInterestRate(double interestRate) {
    		Account.interestRate = interestRate;
    	}
    	public static double getMinMoney() {
    		return minMoney;
    	}
    	public static void setMinMoney(double minMoney) {
    		Account.minMoney = minMoney;
    	}
    	public int getId() {
    		return id;
    	}
    	public double getBalance() {
    		return balance;
    	}
    
    }
    

    AccountTest.java

    package com.klvchen.java1;
    
    public class AccountTest {
    	
    	public static void main(String[] args) {
    		
    		Account acct1 = new Account();
    		Account acct2 = new Account("qwerty", 2000);
    		
    		Account.setInterestRate(0.012);
    		Account.setMinMoney(100);
    		
    		System.out.println(acct1);
    		System.out.println(acct2);
    		
    		System.out.println(acct1.getInterestRate());
    		System.out.println(acct1.getMinMoney());
    	}
    }
    

  • 相关阅读:
    Linux Shell tr 命令详解
    Shell统计每个单词出现的个数
    启明4-29团队进度博客
    启明4-28团队进度博客
    启明4-27团队进度博客
    启明4-26团队进度博客
    启明4-25团队进度博客
    启明4-24团队博客
    每日总结8
    启明4-23团队进度博客
  • 原文地址:https://www.cnblogs.com/klvchen/p/14480269.html
Copyright © 2020-2023  润新知