从键盘录入5位好友的姓名和电话,由于通讯录是无序的所以可以使用集合来实现
时间: 2024-09-23 17:11:11 浏览: 37
当你需要从键盘录入五位好友的信息,比如姓名和电话,并且希望存储这些数据时,确实可以考虑使用集合数据结构,因为它提供了一种无需事先指定元素顺序的方式。在Python中,你可以使用列表(list)或字典(dictionary)来实现这个功能:
**使用列表:**
```python
friends = []
for _ in range(5):
name = input("请输入好友名字:")
phone = input("请输入好友电话:")
friends.append({"name": name, "phone": phone})
```
在这个例子中,每一条朋友信息都是一个包含姓名和电话的字典,列表`friends`就是用来存储这些字典的。
**使用字典列表:**
```python
friends_dict_list = []
for _ in range(5):
friend_info = {}
friend_info["name"] = input("请输入好友名字:")
friend_info["phone"] = input("请输入好友电话:")
friends_dict_list.append(friend_info)
```
这里,每个朋友是一条单独的键值对,整个列表就是所有好友信息的集合。
**相关问题--:**
1. 集合除了无序之外,还有什么优点?
2. 使用字典存储这种数据相比列表有哪些优势?
3. 如果需要按姓名查找特定好友,你会如何操作这个集合?
相关问题
java代码将键盘录入的5个数值放入LinkedList集合,使用常规方法实现删除所有的3位数
好的,我明白了。以下是回答:
可以使用 while 循环遍历 LinkedList 集合,判断每个元素的位数是否为3,如果是则使用 .remove 方法将其从集合中删除。
示例代码如下:
import java.util.LinkedList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
LinkedList<Integer> list = new LinkedList<Integer>();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入5个数字:");
for (int i=0; i<5; i++) {
int num = scanner.nextInt();
list.add(num);
}
System.out.println("删除前集合中的元素为:" + list);
int i = 0;
while (i < list.size()) {
if (Math.abs(list.get(i)) >= 100 && Math.abs(list.get(i)) < 1000) {
list.remove(i);
} else {
i++;
}
}
System.out.println("删除后集合中的元素为:" + list);
}
}
注意:这里使用了 Math.abs 方法计算数值的绝对值,以避免出现负数的影响。
使用Java编写(2)从键盘录入一个字符串,分别使用String和StringBuffer实现字符串的反转
使用String实现字符串反转:
```java
import java.util.Scanner;
public class StringReverse {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = scanner.nextLine();
String reverse = "";
for (int i = str.length() - 1; i >= 0; i--) {
reverse += str.charAt(i);
}
System.out.println("反转后的字符串为:" + reverse);
}
}
```
使用StringBuffer实现字符串反转:
```java
import java.util.Scanner;
public class StringBufferReverse {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = scanner.nextLine();
StringBuffer stringBuffer = new StringBuffer(str);
System.out.println("反转后的字符串为:" + stringBuffer.reverse());
}
}
```