Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何插入Java字符串数组,如何正确查找索引,可用的布尔方法,项的频率_Java_Arrays_String - Fatal编程技术网

如何插入Java字符串数组,如何正确查找索引,可用的布尔方法,项的频率

如何插入Java字符串数组,如何正确查找索引,可用的布尔方法,项的频率,java,arrays,string,Java,Arrays,String,我在代码中使用这些方法时遇到困难,不幸的是它们必须是字符串数组 (有些代码我不需要) import java.util.Scanner; 公共类排序字符串数组{ 专用扫描仪输入=新扫描仪(System.in); 私有字符串[]列表=新字符串[10]; //违约 公共排序字符串数组(){ 字符串[]列表=新字符串[10]; } //首字母 公共排序字符串数组(int initialCapacity){ 字符串[]列表=新字符串[initialCapacity=input.nextInt()]; }

我在代码中使用这些方法时遇到困难,不幸的是它们必须是字符串数组

(有些代码我不需要)

import java.util.Scanner;
公共类排序字符串数组{
专用扫描仪输入=新扫描仪(System.in);
私有字符串[]列表=新字符串[10];
//违约
公共排序字符串数组(){
字符串[]列表=新字符串[10];
}
//首字母
公共排序字符串数组(int initialCapacity){
字符串[]列表=新字符串[initialCapacity=input.nextInt()];
}
//插入
公共void插入项(字符串项){
int i=list.length;
int n=++i;
字符串[]列表2=新字符串[n];
对于(int cnt=0;cnt=list.length){
System.out.println(要删除的排序数组中没有项+);
}
String[]list2=新字符串[list.length-1];
for(int i=0,k=0;i
当前已排序数组,大小:24 A A A F H H J K M M N O O Q R X X Y Z

搜索项目: G在排序字符串数组中不可用

删除项目: R已从排序字符串数组中删除

当前已排序数组,大小为:23 A A A F H H J K M M N O O Q X X Y Z Z

项目频率:
L的出现次数为0

如果这是一个挑战,以下是一些提示:

  • isAvailable()
    method-只需在数组上迭代,并将字符串与
    equals()
    method进行比较。如果找到一个,则返回
    true
    ,否则返回
    false
  • frequencyOfItem()
    方法-与上面相同,但您还需要一个计数器来计算
    equals()
    方法返回true的次数。只需返回该数字
  • delete()。使用
    int
    类型的字段存储数组列表中的值数。(
    list.length()!=size()
  • insertItem()
    -找到要插入的正确索引(这是一个排序数组,对吗?),将从找到的索引开始的所有值向右移动(i+1)。在找到的索引处插入新元素。注意:如果没有足够的空间容纳新元素,则必须重建阵列。请看一看
    Arrays.copyOf()
    方法

为什么不改用
ArrayList
?无论如何,它都有一组对象作为后盾。它有你需要的大多数方法。你有什么问题?不使用ArrayList应该是一个挑战。一大堆事情,主要是如何使用isAvailable方法和FrequencyItem方法
import java.util.Scanner;

public class SortedStringArray {
    private Scanner input = new Scanner(System.in);
    private String[] list = new String[10];

    // default
    public SortedStringArray() {
        String[] list = new String[10];
    }

    // initial
    public SortedStringArray(int initialCapacity) {
        String[] list = new String[initialCapacity = input.nextInt()];
    }

    // insert
    public void insertItem(String item) {
        int i = list.length;
        int n = ++i;
        String[] list2 = new String[n];
        for (int cnt = 0; cnt < list.length; cnt++) {
            list2[cnt] = list[cnt];
        }

    }

    // print
    public void print() {
        System.out.println(list);
    }

    // isAvailable
    public boolean isAvailable(String item) {

        return true;
    }

    // get index
    public int getIndex(String item) {
        int index = -1;
        for(int i=0; i < list.length; i++) {
            index = i;
            break;
        }
        return -1;
    }

    // delete
    public void delete(int index) {
        System.out.println("Deleting an Item: ");
        String item = input.next();
        // not available
        if (list == null || index < 0 || index >= list.length) {
            System.out.println(item + " is NOT available in sorted array to delete !");
        }
        String[] list2 = new String[list.length - 1];
        for (int i = 0, k = 0; i < list.length; i++) {
            if (i == index) {
                continue;
            }
            list2[k++] = list[i];
        }

        // return array
        System.out.println(item + " is deleted from sorted string array !");
    }

    // size
    public int size() {
        return list.length;
    }
    // frequency of item

    public int frequencyOfItem(String item) {

    }
}