首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android Studio -从在Edittext中设置相同单词的多个记录中获取数据

在 Android Studio 中,如果您想从 EditText 中获取相同单词的多个记录,您可以使用以下步骤来实现这一目标。这里的思路是将用户输入的文本分割成单词,然后查找相同的单词并记录它们的出现次数。

步骤 1: 设置布局

首先,您需要在布局文件中添加一个 EditText 和一个 Button,用于输入和触发查找操作。您还可以添加一个 TextView 来显示结果。

代码语言:javascript
复制
<!-- res/layout/activity_main.xml -->
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="16dp">

    <EditText
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="输入文本" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="查找相同单词" />

    <TextView
        android:id="@+id/resultTextView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="16dp" />
</LinearLayout>

步骤 2: 在 Activity 中实现逻辑

在您的 Activity 中,您可以实现逻辑来处理用户输入并查找相同的单词。

代码语言:javascript
复制
// MainActivity.java
package com.example.yourapp;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

import java.util.HashMap;
import java.util.Map;

public class MainActivity extends AppCompatActivity {

    private EditText editText;
    private Button button;
    private TextView resultTextView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        editText = findViewById(R.id.editText);
        button = findViewById(R.id.button);
        resultTextView = findViewById(R.id.resultTextView);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String inputText = editText.getText().toString();
                findDuplicateWords(inputText);
            }
        });
    }

    private void findDuplicateWords(String input) {
        // 将输入文本分割成单词
        String[] words = input.split("\\s+");
        HashMap<String, Integer> wordCount = new HashMap<>();

        // 统计每个单词的出现次数
        for (String word : words) {
            word = word.toLowerCase(); // 转换为小写以避免大小写问题
            if (!word.isEmpty()) {
                wordCount.put(word, wordCount.getOrDefault(word, 0) + 1);
            }
        }

        // 构建结果字符串
        StringBuilder result = new StringBuilder();
        for (Map.Entry<String, Integer> entry : wordCount.entrySet()) {
            if (entry.getValue() > 1) { // 只显示出现次数大于1的单词
                result.append(entry.getKey()).append(": ").append(entry.getValue()).append("\n");
            }
        }

        // 显示结果
        if (result.length() == 0) {
            resultTextView.setText("没有重复的单词。");
        } else {
            resultTextView.setText(result.toString());
        }
    }
}

代码解释

  1. 布局文件:我们创建了一个简单的布局,包含一个 EditText 用于输入文本,一个 Button 用于触发查找操作,以及一个 TextView 用于显示结果。
  2. MainActivity.java
    • onCreate 方法中,我们初始化了视图组件,并设置了按钮的点击事件。
    • findDuplicateWords 方法中,我们将输入文本分割成单词,并使用 HashMap 来统计每个单词的出现次数。
    • 最后,我们构建一个结果字符串,显示出现次数大于 1 的单词,并将结果显示在 TextView 中。

运行应用

现在,您可以运行应用,输入一些文本并点击按钮,应用将显示重复单词及其出现次数。

总结

通过以上步骤,您可以在 Android 应用中从 EditText 中获取相同单词的多个记录。您可以根据需要进一步扩展此功能,例如添加更多的文本处理功能或改进用户界面。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

1分19秒

020-MyBatis教程-动态代理使用例子

14分15秒

021-MyBatis教程-parameterType使用

3分49秒

022-MyBatis教程-传参-一个简单类型

7分8秒

023-MyBatis教程-MyBatis是封装的jdbc操作

8分36秒

024-MyBatis教程-命名参数

15分31秒

025-MyBatis教程-使用对象传参

6分21秒

026-MyBatis教程-按位置传参

6分44秒

027-MyBatis教程-Map传参

15分6秒

028-MyBatis教程-两个占位符比较

6分12秒

029-MyBatis教程-使用占位替换列名

8分18秒

030-MyBatis教程-复习

6分32秒

031-MyBatis教程-复习传参数

领券