1. 程式人生 > >java自定義泛型 面試題:接收任意數組進行反轉

java自定義泛型 面試題:接收任意數組進行反轉

static class ava div 叠代器 類型 應用 system length

不用泛型只能操作某種類型進行反轉

代碼如下:

package com.swift.fanxing;

import org.junit.Test;

public class RenyiReverse {
    @Test
    public void test() {
        int arr[]=new int[] {1,10,6,9,2};
        reverse(arr);
    }
    
    public void reverse(int[] arr) {
        
        for(int i=0;i<arr.length/2;i++) {
            
            
int temp=arr[i]; arr[i]=arr[arr.length-1-i]; arr[arr.length-1-i]=temp; } for(int x:arr) { System.out.println(x); } } }

泛型的功能除了集合叠代器上應用,還可接收任意類型類的變量或數組

package com.swift.fanxing;

import org.junit.Test;

public class RenyiReverse {
    @Test
    
public void test() { Integer arr[]=new Integer[] {1,10,6,9,2};//這裏註意不能使用int 替代Integer String arr2[]=new String[] {"aa","bb","cc","dd","ee"}; reverse(arr); reverse(arr2); } public <T> void reverse(T[] arr) { for(int i=0;i<arr.length/2;i++) { T temp
=arr[i]; arr[i]=arr[arr.length-1-i]; arr[arr.length-1-i]=temp; } for(T x:arr) { System.out.println(x); } } }

非靜態聲明在前,靜態聲明在static之後,類上聲明表示全局,多泛型聲明用<T,J,K>

java自定義泛型 面試題:接收任意數組進行反轉