小编Epi*_*rce的帖子

使用Otto进行线程之间的通信:它会导致任何问题吗?

我已经Otto在我最新的Android项目中尝试过,它确实简化了对象之间的通信.但是,我不确定Threads与它之间的通信是否存在任何隐藏的问题.

这就是我所做的,创建了一个SingletonBus使用,enum以便可以在任何地方访问总线:

public enum SingletonBus {
    INSTANCE;

    private static String TAG = SingletonBus.class.getSimpleName();

    private Bus bus;

    private boolean paused;

    private final Vector<Object> eventQueueBuffer = new Vector<>();

    private Handler handler = new Handler(Looper.getMainLooper());

    private SingletonBus() {
        this.bus = new Bus(ThreadEnforcer.ANY);
    }

    public <T> void postToSameThread(final T event) {
        bus.post(event);
    }

    public <T> void postToMainThread(final T event) {
        try {
            if(paused) {
                eventQueueBuffer.add(event);
            } else {
                handler.post(new Runnable() {
                    @Override
                    public void run() {
                        try { …
Run Code Online (Sandbox Code Playgroud)

java multithreading android otto

1
推荐指数
1
解决办法
1798
查看次数

如何获取最大id值并将数据更新为id?

我在查询最大id值时遇到了问题,并且还希望将数据更新为最大id.

  public void addDataToRealm()
    {
        int key;
        realm.beginTransaction();
        detailsModel = realm.createObject(DetailsModel.class, id);
        detailsModel.setName(name.getText().toString());
        detailsModel.setPlace(place.getText().toString());
        detailsModel.setAddress(address.getText().toString());
        realm.commitTransaction();
        id++;
}
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我正在递增每个事务的id值.是否有可能从领域数据库中获取最大id值,并需要更新最大id的值.请帮我解决这个问题.

android realm

1
推荐指数
1
解决办法
1692
查看次数

难以从Java中的另一个类调用ArrayLists和Methods

第一次海报,长期潜伏者.

我是第二年计算机科学专业学生,试图编写一个二十一点游戏.这不是一个家庭作业,它只是一个有趣的项目.它没有这样做,所以游戏本身还没准备好,所以请忽略该部分.我花了大约两个小时搜索SO以获得答案,但无法将其他用户的类似问题与我自己的问题进行比较,因此我决定发布我的问题.

我的问题是'deck'ArrayList.从我的Blackjack.java文件中,无论我做什么,我都无法调用它,我无法调用我的Card类中的任何方法,我无法操纵它,我似乎无法做任何事情而不会收到某种错误.

public class Blackjack {
    public int bet;
    public int earnings = 0;
    public int total = 100;
    public boolean inputNeeded = true;

    public Blackjack() {
        Scanner s = new Scanner(System.in);

        System.out.println("               Welcome to Blackjack.");
        System.out.println("             Enter any key to continue.");
        System.out.println("         Otherwise, please type Exit to quit.");

        while (!s.nextLine().toString().toLowerCase().equals("exit")) //Main Game Loop - Only ends when user types Exit.
        {
            while (inputNeeded) {
                System.out.println("You currently have $" + total + ".");
                System.out.print("Please place your bets now. (Min …
Run Code Online (Sandbox Code Playgroud)

java methods getter class arraylist

0
推荐指数
1
解决办法
174
查看次数

纠正我计算两点之间的大圆距离的算法

我使用以下算法来计算两点之间的距离,但它产生了不合理的结果.我哪里错了?

private static double distFrom(double latA, double lngA, double latB, double lngB) {
    double pk = 180/3.14169;

    double a1 = latA / pk;
    double a2 = lngA / pk;
    double b1 = latB / pk;
    double b2 = lngB / pk;

    double t1 = Math.cos(a1)*Math.cos(a2)*Math.cos(b1)*Math.cos(b2);
    double t2 = Math.cos(a1)*Math.sin(a2)*Math.cos(b1)*Math.sin(b2);
    double t3 = Math.sin(a1)*Math.sin(b1);
    double tt = Math.acos(t1 + t2 + t3);

    return 3959*tt;
}
Run Code Online (Sandbox Code Playgroud)

java algorithm

0
推荐指数
1
解决办法
1629
查看次数

无法访问的声明

我目前正在创建一个meme生成器,我得到一个错误消息说无法声明这是什么意思,我该如何解决这个问题

这是代码

package com.example.curtis.memegenerator;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

public class BottomPictureFragment
    extends Fragment {

    private static TextView topMemeText;
    private static TextView bottomMemeText;

    // Variables topmemetext and bottommemetext
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.bottom_picture_fragment, container, false);
        return view;
        topMemeText = (TextView) view.findViewById(R.id.topMemeText);
        bottomMemeText = (TextView) view.findViewById(R.id.bottomMemeText);
    }

    //method public void , two parameters
    public void setTopMemeText(String top, …
Run Code Online (Sandbox Code Playgroud)

android

0
推荐指数
1
解决办法
4470
查看次数

领域5.8.0:findAllSorted-编译错误

Android Studio 3.2。境界:4.1.0

在我的build.gradle中:

buildscript {  
    ext.REALM_VERSION = '4.1.0'

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'

        classpath "io.realm:realm-gradle-plugin:$REALM_VERSION"      
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的app / build.gradle中:

implementation 'io.realm:android-adapters:2.0.0'
Run Code Online (Sandbox Code Playgroud)

以下代码段:

RealmQuery<Merchant> realmQuery = realm.where(Merchant.class);
return realmQuery.findAllSorted(sortByFieldName, Sort.ASCENDING);
Run Code Online (Sandbox Code Playgroud)

并且此代码成功工作。真好

但是,当我将Realm升级到5.8.0时,出现编译错误:

Error:
error: cannot find symbol
                return realmQuery.findAllSorted(sortByFieldName, Sort.ASCENDING);
Run Code Online (Sandbox Code Playgroud)

android realm

0
推荐指数
1
解决办法
605
查看次数

Kotlin Data class

I have below POJO in java which is used in Spring boot app to inject properties from YML during the app startup. Trying to convert the app into Kotlin but I have struggle implementing the values injected when I converted the POJO to data class.

@Component
@ConfigurationProperties("rest")
@Data
public class RestProperties {
    private final Client client = new Client();

    @Data
    public static class Client {
        private int defaultMaxTotalConnections;
        private int defaultMaxConnectionsPerRoute;
        private int defaultReadTimeout;
    }
}
Run Code Online (Sandbox Code Playgroud)

I have tried below …

kotlin

0
推荐指数
1
解决办法
108
查看次数

什么是'?' 在代码中

谁能解释这些代码?为什么它?在那里?

package course.examples.theanswer;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class TheAnswer extends Activity {

public static final int[] answers = { 42, -10, 0, 100, 1000 };
public static final int answer = 42;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.answer_layout);

    TextView answerView = (TextView) findViewById(R.id.answer_view);


    int val = findAnswer();
    String output = (val == answer) ? "42" : "We may never know";
    answerView.setText("The answer to life, the universe and everything is:\n\n"
                    + output);
}

private …
Run Code Online (Sandbox Code Playgroud)

java android ternary-operator

-3
推荐指数
1
解决办法
165
查看次数

-3
推荐指数
2
解决办法
1916
查看次数