Você está aqui: Java ::: Pacote java.lang ::: String

Como retornar um objeto String a partir de um StringBuffer ou StringBuilder do Java

Quantidade de visualizações: 2886 vezes
As classes StringBuffer e StringBuilder possuem as mesmas funcionalidades. A diferença é que StringBuilder não é segura em relação à threads e está sendo rapidamente substituída pela classe StringBuffer. Ambas são parecidos com uma String, com a diferença que um StringBuffer ou StringBuilder pode ser modificado in-place, ou seja, modificações em seu conteúdo não geram uma nova cópia, como acontece com objetos da classe String.

Nesta dica eu mostrarei como criar novos objetos String a partir do conteúdo de um StringBuffer ou StringBuilder. Vamos começar analisando os construtores da classe String que permitem passar um objeto StringBuffer ou StringBuilder:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

public class Estudos{
  public static void main(String[] args) {
    // um StringBuffer contendo uma frase (troque 
    // StringBuffer por StringBuilder e o resultado será o mesmo 
    StringBuffer frase = new StringBuffer("Gosto muito de programar em Java");
    
    // vamos obter uma String a partir deste StringBuffer
    String fraseString = new String(frase);
    
    // e exibimos o resultado
    System.out.println(fraseString);
  }
}

Resultado parecido pode ser obtido sem o uso dos construtores String(StringBuilder builder) e String(StringBuffer buffer). Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

public class Estudos{
  public static void main(String[] args) {
    // um StringBuffer contendo uma frase (troque 
    // StringBuffer por StringBuilder e o resultado será o mesmo 
    StringBuffer frase = new StringBuffer("Gosto muito de programar em Java");
    
    // vamos obter uma String a partir deste StringBuffer
    String fraseString = frase.toString();
    
    // e exibimos o resultado
    System.out.println(fraseString);
  }
}

Agora nós usamos o método toString() da classe StringBuffer para converter seu conteúdo em uma string e atribuí-lo à variável fraseString.

Link para compartilhar na Internet ou com seus amigos:

JavaScript ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas

Como testar se um ponto está dentro de um círculo em JavaScript - Desenvolvimento de Games com JavaScript

Quantidade de visualizações: 1269 vezes
Quando estamos trabalhando com computação gráfica, geometria e trigonometria ou desenvolvimento de jogos em JavaScript, é comum precisarmos verificar se um determinado ponto (uma coordenada x, y) está contido dentro de um círculo.

Para melhor entendimento, veja a imagem a seguir:



Veja que temos um círculo com raio igual a 115 e com centro nas coordenadas (x = 205; y = 166). Temos também dois pontos. O ponto vermelho está nas coordenadas (x = 140; y = 90) e o ponto azul está nas coordenadas (x = 330; y = 500.

Como podemos ver na imagem, o ponto vermelho está dentro do círculo, enquanto o ponto azul está fora. E nosso intenção nesta dica é escrever o código JavaScript que permite fazer essa verificação. Tenha em mente que está técnica é muito útil para o teste de colisões no desenvolvimento de games.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<!doctype html>
<html>
<head>
  <title>Desenvolvimento de Games usando HTML5 e JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos declarar a classe Circulo
  class Circulo{
    constructor(xc, yc, raio){
      this.xc = xc; // x do centro
      this.yc = yc; // y do centro
      this.raio = raio; // raio do círculo
    }
  }
  
  // agora vamos declarar a classe Ponto
  class Ponto{
    constructor(x, y){
      this.x = x; // coordenada x
      this.y = y; // coordenada y	
    }
  }
  
  // vamos criar um objeto Circulo
  var c = new Circulo(90, 50, 115);
  // vamos criar um objeto Ponto
  var p = new Ponto(140, 90);
  
  // vamos verificar se o ponto está dentro do
  // círculo
  var dx = p.x - c.xc;
  var dy = p.y - c.yc;
  if((Math.pow(dx, 2) + Math.pow(dy, 2)) < Math.pow(c.raio, 2)){
    document.writeln("O ponto está dentro do círculo");  
  }
  else{
    document.writeln("O ponto NÃO está dentro do círculo");  
  }
</script>
  
</body>
</html>

Ao executar este código nós teremos o seguinte resultado:

O ponto está dentro do círculo.

Experimente com círculos de raios e coordenadas centrais diferentes e também com pontos em várias coordenadas e veja como os resultados são interessantes.


VisuAlg ::: Dicas & Truques ::: Matemática e Estatística

Como resolver uma equação do segundo grau em VisuAlg - Como calcular Bhaskara em VisuAlg

Quantidade de visualizações: 1083 vezes
Como resolver uma equação do 2º grau usando VisuAlg

Nesta dica mostrarei como encontrar as raízes de uma equação quadrática, ou seja, uma equação do 2º usando um algoritmo escrito na ferramenta VisuAlg, uma das preferidas para o aprendizado de algoritmos e lógica de programação.

Definimos como equação do 2º grau ou equações quadráticas qualquer equação do tipo ax² + bx + c = 0 em que a, b e c são números reais e a &#8800; 0. Ela recebe esse nome porque, no primeiro membro da igualdade, há um polinômio de grau dois com uma única incógnita.

Note que, dos coeficientes a, b e c, somente o a é diferente de zero, pois, caso ele fosse igual a zero, o termo ax² seria igual a zero, logo a equação se tornaria uma equação do primeiro grau: bx + c = 0.

Independentemente da ordem da equação, o coeficiente a sempre acompanha o termo x², o coeficiente b sempre acompanha o termo x, e o coeficiente c é sempre o termo independente.

Como resolver uma equação do 2º grau

Conhecemos como soluções ou raízes da equação ax² + bx + c = 0 os valores de x que fazem com que essa equação seja verdadeira. Uma equação do 2º grau pode ter no máximo dois números reais que sejam raízes dela. Para resolver equações do 2º grau completas, existem dois métodos mais comuns:

a) Fórmula de Bhaskara;
b) Soma e produto.

O primeiro método é bastante mecânico, o que faz com que muitos o prefiram. Já para utilizar o segundo, é necessário o conhecimento de múltiplos e divisores. Além disso, quando as soluções da equação são números quebrados, soma e produto não é uma alternativa boa.

Como resolver uma equação do 2º grau usando Bhaskara

Como nosso algoritmo VisuAlg vai resolver a equação quadrática usando a Fórmula de Bhaskara, o primeiro passo é encontrar o determinante. Veja:

\[\Delta =b^2-4ac\]

Nem sempre a equação possui solução real. O valor do determinante é que nos indica isso, existindo três possibilidades:

a) Se determinante > 0, então a equação possui duas soluções reais.
b) Se determinante = 0, então a equação possui uma única solução real.
c) Se determinante < 0, então a equação não possui solução real.

Encontrado o determinante, só precisamos substituir os valores, incluindo o determinante, na Fórmula de Bhaskara:

\[x = \dfrac{- b\pm\sqrt{b^2- 4ac}}{2a}\]

Vamos agora ao código VisuAlg. Nossa aplicação vai pedir para o usuário informar os valores dos três coeficientes a, b e c e, em seguida, vai apresentar as raizes da equação:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

Algoritmo "Como resolver uma equação do 2º grau usando VisuAlg"

Var
  // variáveis usadas na resolução do problema
  // os coeficientes
  a, b, c: real
  // as duas raizes, a imaginaria e o discriminante
  raiz1, raiz2, imaginaria, discriminante: real

Inicio
  // vamos pedir para o usuário informar os valores dos coeficientes
  escreva("Valor do coeficiente a: ")
  leia(a)
  escreva("Valor do coeficiente b: ")
  leia(b)
  escreva("Valor do coeficiente c: ")
  leia(c)

  // vamos calcular o discriminante
  discriminante <- (b * b) - (4 * a * c)

  // a equação possui duas soluções reais?
  se discriminante > 0 então
    raiz1 <- (-b + raizq(discriminante)) / (2 * a)
    raiz2 <- (-b - raizq(discriminante)) / (2 * a)
    escreva("Duas raizes: x1 = ", raiz1, " e x2 = ", raiz2)
  senão
    // a equação possui uma única solução real?
    se discriminante = 0 então
      raiz1 <- -b / (2 * a)
      raiz2 <- -b / (2 * a)
      escreva("Duas raizes iguais: x1 = ", raiz1, " e x2 = ", raiz2)
    // a equação não possui solução real?
    senão
      raiz1 <- -b / (2 * a)
      raiz2 <- -b / (2 * a)
      imaginaria <- raizq(-discriminante) / (2 * a)
      escreva("Existem duas raízes complexas: ")
      escreva("x1 = ", raiz1, " + " ,imaginaria, " e x2 = ", raiz2, " - ", imaginaria)
    fimse
  fimse

Fimalgoritmo

Ao executar este código VisuAlg nós teremos o seguinte resultado:

Valor do coeficiente a: 1
Valor do coeficiente b: 2
Valor do coeficiente c: -3
Existem duas raizes: x1 = 1.0 e x2 = -3.0


Python ::: Dicas & Truques ::: Strings e Caracteres

Como substituir partes de uma palavra, frase ou texto em Python usando a função replace() do objeto String

Quantidade de visualizações: 1438 vezes
Em várias ocasiões nós precisamos efetuar a substituição de substrings em uma string. Para isso nós podemos usar o método replace() da linguagem Python. Esta função possui a seguinte assinatura:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

string.replace(oldvalue, newvalue, count)

onde oldvalue é trecho da string a ser substituído, newvalue é o valor que substituirá o valor antigo e count é a quantidade de substituições. Na ausência do terceiro argumento, TODAS as ocorrências da substring pesquisada serão substituídas.

Veja um exemplo no qual substituímos todas as ocorrências de "Java" por "Python" em uma frase:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

def main():
  # frase original
  original = "Gosto de Java porque Java é fácil"
  print("Frase original:", original)

  # vamos substituir "Java" por "Python"
  nova_frase = original.replace("Java", "Python")
  print("Após a substituição:", nova_frase)

if __name__== "__main__":
  main()

Ao executarmos este código Python nós teremos o seguinte resultado:

Frase original: Gosto de Java porque Java é fácil
Após a substituição: Gosto de Python porque Python é fácil


GNU Octave ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o seno de um número ou ângulo em GNU Octave usando a função sin()

Quantidade de visualizações: 1464 vezes
Em geral, quando falamos de seno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função seno disponível nas linguagens de programação para calcular o seno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função seno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o seno é a razão entre o cateto oposto (oposto ao ângulo theta) e a hipotenusa, ou seja, o cateto oposto dividido pela hipotenusa. Veja a fórmula:

\[\text{Seno} = \frac{\text{Cateto oposto}}{\text{Hipotenusa}} \]

Então, se dividirmos 20 por 36.056 (na figura eu arredondei) nós teremos 0.5547, que é a razão entre o cateto oposto e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.5547. O resultado será 0.9828 (em radianos). Convertendo 0.9828 radianos para graus, nós obtemos 56.31º, que é exatamente o ângulo em graus entre o cateto oposto e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é seno na trigonometria, vamos entender mais sobre a função sin() da linguagem GNU Octave. Esta função, que já vem embutido na ferramenta, recebe um valor numérico e retorna um valor, também numérico) entre -1 até 1 (ambos inclusos). Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

>> sin(0) [ENTER]
ans = 0
>> sin(1) [ENTER]
ans = 0.8415
>> sin(2) [ENTER]
ans = 0.9093
>>

Note que calculamos os senos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função seno mostrada abaixo:




Python ::: Dicas & Truques ::: Data e Hora

Como calcular a diferença de dias entre duas datas em Python

Quantidade de visualizações: 1093 vezes
Nesta dica mostrarei como podemos usar retornar a diferença de dias entre duas datas na linguagem Python usando o objeto Date, do módulo DateTime.

Note o uso do construtor date() para construir as duas datas e em seguida passamos estas duas datas para uma função personalizada numero_dias(), que retorna a quantidade de dias entre elas.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# vamos importar o objeto Date
from datetime import date
 
def main():
  # vamos criar a data inicial e a data final
  d1 = date(2022, 11, 10)
  d2 = date(2022, 12, 23)

  # vamos calcular a diferença de dias
  diferenca = numero_dias(d1, d2)

  # e mostramos o resultado
  print("A primeira data é: {0}".format(d1))
  print("A segunda data é: {0}".format(d2))
  print("A diferença de dias entre as duas datas é: {0} dias".format(
    diferenca))  

# função que recebe duas datas e retorna a diferença
# de dias entre elas
def numero_dias(data1, data2):
  return (data2 - data1).days

if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

A primeira data é: 2022-11-10
A segunda data é: 2022-12-23
A diferença de dias entre as duas datas é: 43 dias


Desafios, Exercícios e Algoritmos Resolvidos de Python

Veja mais Dicas e truques de Python

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 69 usuários muito felizes estudando em nosso site.