java集成常用数组操作的类(比之前的集成度高点)

简介: 相比于书上的代码, 我觉得我改进的更清爽,耦合度更小啦。 输出都可以在方法里搞定了。。 1 /** 2 * 3 */ 4 5 /** 6 * @author home 7 * 8 */ 9 class HighArray ...

相比于书上的代码, 我觉得我改进的更清爽,耦合度更小啦。

输出都可以在方法里搞定了。。

  1 /**
  2  * 
  3  */
  4 
  5 /**
  6  * @author home
  7  *
  8  */
  9 class HighArray
 10 {
 11     private long[] a;
 12     private int nElems;
 13     
 14     public HighArray(int max)
 15     {
 16         a = new long[max];
 17         nElems = 0;
 18     }
 19     public boolean find(long searchKey)
 20     {
 21         int j;
 22         for(j = 0; j < nElems; j++)
 23             if(a[j] == searchKey)
 24                 break;
 25         if(j == nElems){
 26             System.out.println("Can't find searchKey : " + searchKey);        
 27             return false;
 28         }
 29         else{
 30             System.out.println("Found searchKey : " + searchKey);
 31             return true;
 32         }
 33     }
 34     public void insert(long value)
 35     {
 36         a[nElems] = value;
 37         nElems++;
 38         System.out.println("Insert  value: " + value);
 39     }
 40     public boolean delete(long value)
 41     {
 42         int j;
 43         for(j = 0; j < nElems; j++)
 44             if(value == a[j])
 45                 break;
 46         if(j == nElems){
 47             System.out.println("Can't delete value: " + value);
 48             return false;
 49         }
 50         else
 51         {
 52             for(int k = j; k < nElems; k++)
 53                 a[k] = a[k + 1];
 54             nElems--;
 55             System.out.println("Delete value: " + value);
 56             return true;
 57         }
 58     }
 59     public void display()
 60     {
 61         for(int j = 0; j < nElems; j++)
 62             System.out.print(a[j] + " ");
 63         System.out.println(" ");
 64     }
 65 }
 66 public class HighArrayApp {
 67 
 68     /**
 69      * @param args
 70      */
 71     public static void main(String[] args) {
 72 
 73         int maxSize = 100;
 74         int searchKey;
 75         HighArray arr;
 76         arr = new HighArray(maxSize);
 77         
 78         arr.insert(77);
 79         arr.insert(99);
 80         arr.insert(44);
 81         arr.insert(55);
 82         arr.insert(22);
 83         arr.insert(88);
 84         arr.insert(11);
 85         arr.insert(00);
 86         arr.insert(66);
 87         arr.insert(33);
 88         
 89         arr.display();
 90         
 91         searchKey = 35;
 92         arr.find(searchKey);            
 93         
 94         searchKey = 88;
 95         arr.find(searchKey);
 96         
 97         arr.delete(00);
 98         arr.delete(55);
 99         arr.delete(99);
100         
101         arr.display();
102         
103         arr.insert(687);
104         arr.insert(3234);
105         
106         arr.display();
107     }
108 
109 }

目录
相关文章
|
12天前
|
安全 Java API
告别繁琐编码,拥抱Java 8新特性:Stream API与Optional类助你高效编程,成就卓越开发者!
【8月更文挑战第29天】Java 8为开发者引入了多项新特性,其中Stream API和Optional类尤其值得关注。Stream API对集合操作进行了高级抽象,支持声明式的数据处理,避免了显式循环代码的编写;而Optional类则作为非空值的容器,有效减少了空指针异常的风险。通过几个实战示例,我们展示了如何利用Stream API进行过滤与转换操作,以及如何借助Optional类安全地处理可能为null的数据,从而使代码更加简洁和健壮。
40 0
|
1天前
|
Java Maven Windows
使用Java创建集成JACOB的HTTP服务
本文介绍了如何在Java中创建一个集成JACOB的HTTP服务,使Java应用能够调用Windows的COM组件。文章详细讲解了环境配置、动态加载JACOB DLL、创建HTTP服务器、实现IP白名单及处理HTTP请求的具体步骤,帮助读者实现Java应用与Windows系统的交互。作者拥有23年编程经验,文章来源于稀土掘金。著作权归作者所有,商业转载需授权。
使用Java创建集成JACOB的HTTP服务
|
1天前
|
Java
java的类详解
在 Java 中,类是面向对象编程的核心概念,用于定义具有相似特性和行为的对象模板。以下是类的关键特性:唯一且遵循命名规则的类名;描述对象状态的私有属性;描述对象行为的方法,包括实例方法和静态方法;用于初始化对象的构造方法;通过封装保护内部属性;通过继承扩展其他类的功能;以及通过多态增强代码灵活性。下面是一个简单的 `Person` 类示例,展示了属性、构造方法、getter 和 setter 方法及行为方法的使用。
|
4天前
|
Java API 开发者
【Java字节码操控新篇章】JDK 22类文件API预览:解锁Java底层的无限可能!
【9月更文挑战第6天】JDK 22的类文件API为Java开发者们打开了一扇通往Java底层世界的大门。通过这个API,我们可以更加深入地理解Java程序的工作原理,实现更加灵活和强大的功能。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来!
|
3天前
|
Java
Java 对象和类
在Java中,**类**(Class)和**对象**(Object)是面向对象编程的基础。类是创建对象的模板,定义了属性和方法;对象是类的实例,通过`new`关键字创建,具有类定义的属性和行为。例如,`Animal`类定义了`name`和`age`属性及`eat()`、`sleep()`方法;通过`new Animal()`创建的`myAnimal`对象即可调用这些方法。面向对象编程通过类和对象模拟现实世界的实体及其关系,实现问题的结构化解决。
|
2天前
|
Java API 开发者
【Java字节码的掌控者】JDK 22类文件API:解锁Java深层次的奥秘,赋能开发者无限可能!
【9月更文挑战第8天】JDK 22类文件API的引入,为Java开发者们打开了一扇通往Java字节码操控新世界的大门。通过这个API,我们可以更加深入地理解Java程序的底层行为,实现更加高效、可靠和创新的Java应用。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来,并积极探索类文件API带来的无限可能!
|
11天前
|
Java Devops 持续交付
探索Java中的Lambda表达式:简化代码,提升效率DevOps实践:持续集成与部署的自动化之路
【8月更文挑战第30天】本文深入探讨了Java 8中引入的Lambda表达式如何改变了我们编写和管理代码的方式。通过简化代码结构,提高开发效率,Lambda表达式已成为现代Java开发不可或缺的一部分。文章将通过实际例子展示Lambda表达式的强大功能和优雅用法。
|
11天前
|
缓存 安全 Java
Java服务器端技术:Servlet与JSP的集成与扩展
Java服务器端技术:Servlet与JSP的集成与扩展
12 3
|
10天前
|
存储 开发者 C#
WPF与邮件发送:教你如何在Windows Presentation Foundation应用中无缝集成电子邮件功能——从界面设计到代码实现,全面解析邮件发送的每一个细节密武器!
【8月更文挑战第31天】本文探讨了如何在Windows Presentation Foundation(WPF)应用中集成电子邮件发送功能,详细介绍了从创建WPF项目到设计用户界面的全过程,并通过具体示例代码展示了如何使用`System.Net.Mail`命名空间中的`SmtpClient`和`MailMessage`类来实现邮件发送逻辑。文章还强调了安全性和错误处理的重要性,提供了实用的异常捕获代码片段,旨在帮助WPF开发者更好地掌握邮件发送技术,提升应用程序的功能性与用户体验。
17 0
|
10天前
|
存储 Java
Java编程中的对象和类
在Java的世界中,“对象”与“类”是构建一切的基础。就像乐高积木一样,类定义了形状和结构,而对象则是根据这些设计拼装出来的具体作品。本篇文章【8月更文挑战第31天】 将通过一个简单的例子,展示如何从零开始创建一个类,并利用它来制作我们的第一个Java对象。准备好让你的编程之旅起飞了吗?让我们一起来探索这个神奇的过程!
下一篇
DDNS